首页 文章

无法找到元素链接

提问于
浏览
1

我正在尝试找到“搜索”链接,但是我收到以下错误: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(“Search”)) . click();

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

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

上面的代码也不起作用 .

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

2 回答

  • 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);
    
  • 0

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

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

相关问题