首页 > 其他 > 详细

selenium报错问题

时间:2019-12-15 20:33:29      阅读:133      评论:0      收藏:0      [点我收藏+]

最近正在学习写自动化测试脚本,遇到一个错误迟迟未解决,导致自信心大受挫败,甚至想放弃。

思考许久突然想到,我遇到的问题是否也有人会遇到,如果有的话问题就应该有解决办法了。没什么问题是百度解决不了的,如果不行那就谷歌。

终于有了前辈们的指引,问题解决了,瞬间信心十足,又有了学习的动力。

话不多说,直接上图,下面是遇到的错误提示:

Traceback (most recent call last):
File "cs.py", line 26, in test_GIS
self.driver.find_element_by_xpath(‘//*[@id="app"]/div/div[1]/div[1]/div/ul/li[2]‘).click()#点击GIS地图
File "F:\python3.7\lib\site-packages\selenium\webdriver\remote\webelement.py", line 80, in click
self._execute(Command.CLICK_ELEMENT)
File "F:\python3.7\lib\site-packages\selenium\webdriver\remote\webelement.py", line 633, in _execute
return self._parent.execute(command, params)
File "F:\python3.7\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "F:\python3.7\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <li class="ivu-menu-item">...</li> is not clickable at point (33, 209). Other element would receive the click: <i class="ivu-icon ivu-icon-ios-warning"></i>
(Session info: chrome=78.0.3904.97)

解决办法:

在定位元素前面添加休眠时间,原因是页面未加载完全,使用无法识别元素。刚开始一直以为是元素定位的不对,但我通过CMD命令窗口一行一行的运行检查发现并没有出现报错。下面是我修改好的代码

直接在元素定位前面添加一秒休眠时间,结果成功运行。

 1   def test_GIS1(self):#GIS查看设备详情
 2     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[2]/div[1]/div/a/i).click()#点击侧边栏
 3     time.sleep(1)
 4     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[1]/div[1]/div/ul/li[2]).click()#点击GIS地图
 5     time.sleep(1)
 6     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[2]/div[2]/div/div/div/div/div/div[1]/div/ul/li/div).click()#点击省级区域
 7     time.sleep(1)
 8     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[2]/div[2]/div/div/div/div/div/div[1]/div/ul/li/ul/li/div).click()#点击市级区域
 9     time.sleep(1)
10     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[2]/div[2]/div/div/div/div/div/div[1]/div/ul/li/ul/li/ul/li/div).click()#点击第一个区域
11     time.sleep(1)
12     self.driver.find_element_by_xpath(//*[@id="app"]/div/div[2]/div[2]/div/div/div/div/div/div[1]/div/ul/li/ul/li/ul/li[1]/ul/li[1]).click()#点击第一个设备
13     time.sleep(1)
14     self.driver.find_element_by_xpath(//*[@id="allmap"]/div[1]/div/div[2]/div/div[2]/div/div[1]/button[1]).click()#点击设备详情
15     time.sleep(1)
16     self.driver.find_element_by_xpath(/html/body/div[14]/div[2]/div/div/div[2]/div[2]/button/span).click()#点击关闭

selenium报错问题

原文:https://www.cnblogs.com/hy546880109/p/12045463.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!