使用C#的Selenium WebDriver - 如何找到这些按钮?

时间:2014-08-21 16:17:05

标签: c# selenium-webdriver

我正在尝试点击这些按钮,但我没有得到任何东西。即使xpath也无法接收它们。有没有人知道如何找到这些按钮?

<button class="rt-button rt-dialog-button" title="" value="">Close</button>
<button class="rt-button rt-dialog-button" title="" value="">OK</button>

非常感谢您的帮助

修改

感谢您的帮助。这些建议都没有对我有用,但我确实使用了:

C#

IWebElement OKButton = driver.FindElement(By.XPath(("//button[@class='rt-button rt-dialog-button'][2]")));

IWebElement CloseButton = driver.FindElement(By.XPath(("//button[@class='rt-button rt-dialog-button'][1]")));

4 个答案:

答案 0 :(得分:3)

我使用xpath找到它们:

By.XPath("//button[text()='Close']")
By.XPath("//button[text()='OK']")

答案 1 :(得分:0)

您可以为每个元素添加ID。

<button id="closeButton" class="rt-button rt-dialog-button" title="" value="">Close</button>
<button id="okButton" class="rt-button rt-dialog-button" title="" value="">OK</button>

然后找到它你可以做类似的事情

IWebElement element = driver.FindElement(By.Id("closeButton"));
IWebElement element = driver.FindElement(By.Id("openButton"));

我曾经有过这样的时间,我很难通过课堂捕捉和x-path和ID帮助。

答案 2 :(得分:0)

我认为你可以尝试这个xpath:

//button[contains(text(),'Close')]

答案 3 :(得分:0)

// [=&#39; OK&#39;]

如果这不起作用,那么您有多个隐藏相同文本或页面某处的元素