我有一个带qtwebdriver的应用程序QCalculator: https://github.com/cisco-open-source/qtwebdriver/pull/27/files
我正在尝试编写简单的python测试,这将测试这个计算器, 这是我的剧本:
input
这是计算器的界面
该脚本应该点击数字“5”,但我收到了这个错误:
#!/usr/bin/env python
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Remote(
desired_capabilities=webdriver.DesiredCapabilities.FIREFOX,
command_executor='http://127.0.0.1:9517'
)
driver.get("qtwidget://Calculator");
btn = driver.find_elements_by_xpath("//Button[@name='5']")[0]
btn.click();
按钮的创建方式如下:(在github下面的链接中)
Traceback (most recent call last):
File "./testCalculator.py", line 12, in <module>
btn = driver.find_elements_by_xpath("//Button[@name='5']")[0]
IndexError: list index out of range
如何更改此代码(“//按钮[@ name ='5']”)[0]以找到按钮?
答案 0 :(得分:0)
此错误消息......
btn = driver.find_elements_by_xpath("//Button[@name='5']")[0]
IndexError: list index out of range
...意味着通过find_elements_by_xpath()
方法初始化的列表是空列表。因此,当您尝试通过索引 [0]
调用列表的第一个元素时,会引发。
btn = driver.find_elements_by_xpath("//Button[@name='5']")[0]
,标记名称应该是按钮而不是按钮。