Web 自动化——获取不到元素常见原因:
(1)元素属性为隐藏
处理办法:可通过调用JS脚本,处理隐藏元素,更改元素属性。eg:
# 如果界面有隐藏元素:可以调用js脚本,处理隐藏元素
js = "document.getElementById(\"normalLoginTab\").style.display='block';"
driver.execute_script(js)
(2)元素在iframe标签
处理办法:将driver切换到iframe标签。eg:
frame1 = driver.switch_to.frame(driver.find_element_by_xpath("//div[@id='loginDiv']/iframe"))
# 测试一下该元素能否获取
a = driver.find_element_by_id('account-box')
print(a)
(3)页面元素还未加载完全
处理办法:设置页面等待时间。eg:
from time import sleep
sleep(3)
-------------后续遇到其他原因再补充--------
本文深入探讨了Web自动化测试中常见的元素获取问题,包括元素隐藏、位于iframe内及页面加载不完全等情况,并提供了详细的解决方案,如使用JS脚本处理隐藏元素、切换iframe以及设置页面等待时间等。

被折叠的 条评论
为什么被折叠?



