我正在使用Webdriver并试图点击一个链接(Billing),它还有一个下拉列表(My Quotes)。要查找结算,然后单击我的报价链接,我使用以下代码:
String xp = "//*[@id='Primary_Navbar-Billing']/a"; // With this xpath I can search on my Firefox browser but using the same in my code gives me an error:
WebElement menu = driver.findElement(By.xpath(xp));
driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS);
// Initiate mouse action using Actions class
Actions builder = new Actions(driver);
// move the mouse to the earlier identified menu option
builder.moveToElement(menu).build().perform();
//identify menu option from the resulting menu display and click
driver.findElement(By.linkText("My Quotes")).click();
我收到错误:
线程中的异常" main" org.openqa.selenium.ElementNotVisibleException:
答案 0 :(得分:1)
你可以试试这3个选项:
添加Thread.sleep(YourMilliSecondesTime);在你点击之前();动作。
使用Xpath代替By.linkText查找链接,Xpath总是更好的选择。
或试试这个:driver.findElement(By.xpath(" // span [text()=' YOURLINKTEXTEHERE']"))。click()) ;如果由于任何原因你没有这个元素的良好xpath。
希望这会有所帮助。 :)