无法找到元素链接

时间:2017-01-10 11:58:00

标签: java html selenium-webdriver

我正在尝试找到“搜索”链接,但是我收到以下错误:     org.openqa.selenium.NoSuchElementException:无法找到元素:     {“method”:“链接文字”,“选择器”:“搜索”}

我使用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( “搜索”))点击();

我也尝试过运行带有以下内容的IDE:     //错误:捕获异常[错误:不支持的命令[waitForPopUp |     _blank | 30000]

driver.findElement(By.cssSelector("li[title=\"Search\"] > a > span")).click();

上述代码也不起作用。

我不确定它是否有所作为,但是要到达该页面时会加载一个新选项卡。

2 个答案:

答案 0 :(得分:1)

您需要切换到新标签页

// 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);

答案 1 :(得分:0)

您可以尝试使用以下代码:

driver.findElement(By.xpath("//span[contains(text(), 'Search')]")).click();