无法在selenium c#webdriver中获取编辑按钮

时间:2014-08-14 14:18:57

标签: selenium selenium-webdriver

从html代码我无法获得selenium c#

中的编辑按钮
<button class="pt-buttonbase pt-button pt-bordered pt-icon-and-text" data-iconurl="../content/icons/Edit.png" data-bind="click: $root.editTemplate" data-toolkit="button">

4 个答案:

答案 0 :(得分:1)

询问开发人员是否给该按钮一个唯一的ID。然后按ID搜索。

答案 1 :(得分:0)

不知道你尝试了什么,没试过,我会建议xpath。假设您有一个WebDriver变量Driver

WebElement EditButton = Driver.FindElement(
    By.XPath("//button[@data-iconurl='../content/icons/Edit.png']"));

答案 2 :(得分:0)

如果你能提供一些HTML,它会更好。请注意,当您使用带有 class 的XPath时 - 您将收到符合您条件的第一个元素。即使它是正确的 - 你将得到不需要的按钮。在这种情况下,使用索引,例如[1]。

答案 3 :(得分:0)

我喜欢使用CssSelector:

您可能不需要使用所有4个类名,但这将起作用:

By.CssSelector(".pt-buttonbase.pt-button.pt-bordered.pt-icon-and-text"));

您可以随时在浏览器控制台中查看使用JQuery查看类是否是唯一的:

$(".pt-buttonbase")

如果那不是唯一的,你可以继续添加其他类名,直到你只得到一个对象作为回应。