C:\apache-tomcat-8.0.27>python
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (
Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from selenium import webdriver
>>> webdriver.__version__
'3.0.2'
>>>
硒Python測試代碼如下所示:爲什麼硒代碼只能在調試模式下成功執行,但在運行模式下失敗?
driver.get("http://localhost:8080/")
self.assertEqual("Cubiender", driver.title)
driver.find_element_by_id("login_email").clear()
driver.find_element_by_id("login_email").send_keys("[email protected]")
driver.find_element_by_id("login_pwd").clear()
driver.find_element_by_id("login_pwd").send_keys("pass")
driver.find_element_by_css_selector("input[type=\"submit\"]").click()
driver.find_element_by_link_text('Project List')
sleep(0.05)
driver.find_element_by_xpath("//input[@value='2588']").click()
sleep(0.05)
driver.find_element_by_css_selector("div.menu > #inquireProject").click()
上述代碼在 driver.find_element_by_xpath(「//輸入運行時,可以在調試模式下成功地運行,但會失敗[@value = '2588']「)點擊()
即使我增加睡眠
堆棧跟蹤:
C:\Python27\python.exe "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.3.2\helpers\pycharm\utrunner.py" F:\python\sub_proj2.py true
測試開始於10:53 ...
Error
Traceback (most recent call last):
File "F:\python\sub_proj2.py", line 41, in test_untitled
driver.find_element_by_css_selector("span.triangle").click()
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 437, in find_element_by_css_selector
return self.find_element(by=By.CSS_SELECTOR, value=css_selector)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 752, in find_element
'value': value})['value']
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute
self.error_handler.check_response(response)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response
raise exception_class(message, screen, stacktrace)
NoSuchElementException異常:消息:找不到元素:與退出代碼完成span.triangle
進程0
聽起來像一個時機的問題,爲什麼會出現點擊元素之前睡眠?這個輸入是如何填充的? – Corporalis
拋出的異常是什麼?堆棧跟蹤? –
嘗試增加'sleep()'內的等待或使用'顯式等待' –