我试图找到“搜索”链接,但收到以下错误: org.openqa.selenium.NoSuchElementException:无法找到元素: {"method":"链接文本","selector":"搜索"}
我使用 Firebug 检查了该对象:
<li onclick="submitSelectedTab('tabSelected', 'TabGroup1', '12');" title="Search">
<a href="#">
<span>Search</span>
</a>
</li>
我尝试使用的代码是
driver.findElement(By.linkText("Search")).click();
我也尝试过: driver.findElement(By.partialLinkText("搜索")).click();
我还尝试运行 IDE,结果显示: //错误:捕获异常 [错误:不支持的命令 [waitForPopUp | _空白| 30000]]
driver.findElement(By.cssSelector("li[title=\"Search\"] > a > span")).click();
上面的代码也不起作用。
我不确定这是否有什么不同,但为了进入该页面,加载了一个新选项卡。
最佳答案
您需要切换到新标签页
// get original tab handle
String currentHandle = driver.getWindowHandle();
// open the new tab here
// switch to the new tab
for (String handle : driver.getWindowHandles()) {
if (!handle.equals(currentHandle))
{
driver.switchTo().window(handle);
}
}
driver.findElement(By.linkText("Search")).click();
// close the new tab and switch back to the old tab
driver.close();
driver.switchTo().window(currentHandle);
关于java - 无法找到元素链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41568309/