[英]Selenium web driver / java / hover + click
我希望單擊菜單鏈接,但是僅當光標懸停在其上方並拉長下拉菜單時,該鏈接才會出現。 因此,自動化無法像我的單擊功能一樣單擊它。 我做了一些研究,並使用moveToElement
和clickAndHold
。 后者給了我一些希望,但遠非完美。 我發現它沒有完全單擊一半,有時它確實單擊了,但是單擊了下拉菜單中的其他菜單鏈接。 有什么想法可以使它100%地起作用嗎?
public String hoverClick(String object, String data){
APP_LOGS.debug("Moving the mouse");
try{
WebElement tab;
WebElement link;
tab = driver.findElement(By.xpath("//a[contains(@href, 'FOO')]"));
link = driver.findElement(By.xpath("//a[contains(@href, 'BAR')]"));
Actions act = new Actions(driver);
act.clickAndHold(tab).click(link).perform();
return Constants.KEYWORD_PASS;
}catch(Exception e){
return Constants.KEYWORD_FAIL+"Unable to move the mouse/click"+e.getMessage();
}
}
謝謝。
請嘗試以下方法:
act.moveToElement(tab).moveToElement(link).click(link).perform();
在這里,我們將鼠標懸停在填充下拉列表的元素上(該元素包含要單擊的元素),然后移至要單擊的元素,然后單擊它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.