學習selenium+python 時定位不到元素問題
按照蟲師著作的《Selenium2 Python自動化測試實戰(第二版)》中的以下程式碼,s實現的功能是開啟網頁並驗證是否是正確的網頁。我在sublimeTest中執行,使用的是Chrome瀏覽器:
執行後出錯:
E
======================================================================
ERROR: test_youdao (__main__.MyTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "E:\learn\Selenium2_Python_test\test_project\test_case\test_youdao.py", line 14, in test_youdao
driver.find_element_by_id("query").clear()
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 360, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 978, in find_element
'value': value})['value']
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)NoSuchElementException: Message: no such element: Unable to locate element: {"method":"id","selector":"query"}
竟然定位不到?!
於是本著學習的態度,用firebug查看了有道的查詢定位元素,一看不知道,看了才發現定位方式都變了
然後改了新的定位方式之後,再次執行,通過了! 新手的我要吸取教訓啊,網頁更新那麼快,按照別人程式碼學習的時候,要看最新的網頁的格式,否則還會遇到同樣的問題!