美文网首页
UI自动化遇到element click intercepted

UI自动化遇到element click intercepted

作者: 二十尹 | 来源:发表于2020-12-17 10:03 被阅读0次

原代码为:

self.driver.find_element_by_xpath('/html/body/div[1]/div[1]/div/div/button').click()

报错:

element click intercepte

解决方法:
通过执行js脚本点击该元素。Webdriver对部分浏览器上的控件时不支持直接驱动的,例如滚动条、时间控件,所以我们需要执行JS脚本,间接完成这些操作

@logger_doc()
def submit(self):
    """需要滚动才能看见的按钮"""
 self.screen(doc=self.submit.__doc__)
 submit_btn = self.find_element_by_xpath(
        '//*[@id="project"]/div[3]/div[2]/div/div[2]/div/div/button')
 return self.driver.execute_script("arguments[0].click();", submit_btn) 

页面自动下滑至某元素可见:

ele_s = web_driver.find_elements_by_css_selector('#project > div:nth-child(3) > div.l-out-dialog > 'div > div.l-dialog-content > div > div > button')
ele = ele_s[0]
web_driver.execute_script('arguments[0].scrollIntoView();', ele)  # 定位至ele可见
firm_page.submit()
assert firm_page.find_element_exist_by_xpath(firm_page.follow_window())

成功啦

相关文章

网友评论

      本文标题:UI自动化遇到element click intercepted

      本文链接:https://www.haomeiwen.com/subject/xpwagktx.html