我正在使用 Selenium webdriver 来测试我的应用程序,并且我在识别相同的按钮时遇到了困难。代码片段是这样的:
<input type="submit" onclick="return sign(this);" value="Login">
它的xpath是:
html/body/table/tbody/tr[2]/td/center/form/center/table/tbody/tr[3]/td/center/input[1]
使用哪个对象属性以及如何使用?
我正在使用 Selenium webdriver 来测试我的应用程序,并且我在识别相同的按钮时遇到了困难。代码片段是这样的:
<input type="submit" onclick="return sign(this);" value="Login">
它的xpath是:
html/body/table/tbody/tr[2]/td/center/form/center/table/tbody/tr[3]/td/center/input[1]
使用哪个对象属性以及如何使用?
您不应该使用该 XPath。
我会冒险猜测您使用某种工具(无论是 Firebug 还是 IDE)来生成该 XPath。现在停止!
XPath 很好用,可以在这里使用,只是不依赖工具为您生成它!XPath 注定要失败!
您将需要提供更多 HTML,特别是围绕该按钮。
但是,您应该能够使用以下简单的东西:
//input[@value='Login']
如果 xpath 真的很稳定,您可以使用它。By.id我发现在 html 元素中定义 id 标签和使用定位器要容易得多。或者,您可以使用css selectors,具体取决于按钮的“唯一性”,这样的事情可能会起作用:
By.cssSelector("input[value='Login']")