我正在使用以下内容在iOS平台上开展移动自动化:
Selenium WebDriver:2.47
Appium dot net driver:1.4.0.3
Appium:1.4.8
我想使用xpath找到一个元素并单击它。但我不想使用Selenium webdriver的本机方法。
我想使用javascript执行此操作。
我尝试了以下内容:
_driver.ExecuteScript("window.document.evaluate(\"//a[contains(text(),'Log In')]\", document.lastChild, null,XPathResult.ANY_TYPE, null).click()");
IList<IWebElement> buttons = _driver.FindElements(By.XPath("//a[contains(text(),'Log In')]"));
_driver.ExecuteScript("arguments[0].click();", buttons[0]);
_driver.FindElement(By.XPath("//a[contains(text(),'Log In')]")).Click();
我可以切换到网页浏览但无法点击此特定元素。 在第二种方法中,我可以看到我可以获取元素,但调用click()方法不是单击元素。
提前致谢。我现在被困在这里两天了。
这是我要点击的按钮的html:
<a class="btn btn-outline white slide-demo" data-slide-target=".slide-wrap">Log In</a>
答案 0 :(得分:0)
以下示例演示了使用XPath查询查找包含“XPath”的所有H3的通用非IE语法:
var result = document.evaluate("//h3[contains(text(),'XPath')]",
document.documentElement, null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
for (var i=0; i<result.snapshotLength; i++) {
alert(result.snapshotItem(i).innerHTML)
}