Selenium_Webdriver–iterable(迭代) error

在用selenium 定位页面元素的时候,可以用到各种find_element_by_*操作。但是当你需要定位一组元素的时候,要用到find_elements_by_*(此处注意这个s).
Q:今天在写程序,对页面中定位到的所有checkbox勾选,代码如下:
def test_checkbox(self):
driver = self.driver
driver.get(self.base_url)
inputs = driver.find_element_by_tag_name(“input”)
for input in inputs:
if input.get_attribute(“type”) == “checkbox”:
input.click()
time.sleep(3)
运行测试用例报错:
Traceback (most recent call last):
File “D:/ABA_Selenium_Testing/ABATesting/CheckBox.py”, line 25, in test_checkbox
for input in inputs:
TypeError: ‘WebElement’ object is not iterable
A:iterable 迭代, 原来是用错了find_element_导致的,囧,换成find_elements_× OK 啦。

Note: 点击学习更多os.path操作

每天进步一点点…

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.