dr4*_*116 8 java selenium mouseover mousehover selenium-webdriver
编辑:所以我想出了一种悬停在元素上的简单方法,但我想等待弹出一个结果.Chrome网页驱动程序悬停在元素上并且移动得太快,以至于我无法看到文本.在文本弹出之前,如何让它保持悬停状态?我查看了Wait()和until(),但我似乎无法使它们正常工作(我认为这是因为我并不是真的在等待代码中的布尔值.除非有人有一些建议吗? ).这就是我到目前为止所拥有的......
WebDriver driver = getWebDriver();
By by = By.xpath("//*[@pageid='" + menuItem + "']");
Actions action = new Actions(driver);
WebElement elem = driver.findElement(by);
action.moveToElement(elem);
action.perform();
Run Code Online (Sandbox Code Playgroud)
再次感谢大家!
干杯.
小智 10
你不能依赖睡眠,所以你应该试试这个:
WebElement myDynamicElement = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(By.id("myDynamicElement")));
Run Code Online (Sandbox Code Playgroud)
你在ExpectedConditions课堂上有很多方法.
这是一些信息:
希望您觉得这个有帮助.
似乎我在该方法的那一点上没有等待足够长的时间让文本变得可见.在它的末尾添加一个简单的睡眠功能正是我所需要的.
@When("^I hover over menu item \"(.*)\"$")
public void I_hover_over_menu_item(String menuItem)
{
WebDriver driver = getWebDriver();
By by = By.xpath("//*[@pageid='" + menuItem + "']");
Actions action = new Actions(driver);
WebElement elem = driver.findElement(by);
action.moveToElement(elem);
action.perform();
this.sleep(2);
}
public void sleep(int seconds)
{
try {
Thread.sleep(seconds * 1000);
} catch (InterruptedException e) {
}
}
Run Code Online (Sandbox Code Playgroud)
希望能帮助其他类似的绑定!
干杯!
| 归档时间: |
|
| 查看次数: |
32940 次 |
| 最近记录: |