通过xpath找不到元素

时间:2017-05-17 09:40:14

标签: selenium nightwatch.js

我有一个按钮:

 <button type="submit" class="btn btn-default btn-auth">Anmelden</button>
夜班人员没有以这些方式找到它:

browser.waitForElementPresent('//button[@class="btn btn-default btn-auth"]', 5000); 
browser.waitForElementPresent('//button[contains(@class, "btn btn-default btn-auth")]', 5000); 
browser.waitForElementPresent('//button[text()="Anmelden"]', 5000); 
browser.waitForElementPresent('//button[contains(text(), "Anmelden")]', 5000); 

但它是这样找到的:

browser.waitForElementPresent('.btn.btn-default.btn-auth');

为什么上面的4个命令不起作用?我必须结帐text(),因为我有多个同一类的按钮。

2 个答案:

答案 0 :(得分:1)

如果你想通过XPath找到元素,而不是class / id,试试这个:

browser.useXpath().waitForElementPresent('//button[contains(@class,"btn-auth") and contains(text(),"Anmelden")]', 5000); 

答案 1 :(得分:0)

使用此xpath;

//button[.="Anmelden"]