簡體   English   中英

Selenium Web驅動程序/ Java /懸停+單擊

[英]Selenium web driver / java / hover + click

我希望單擊菜單鏈接,但是僅當光標懸停在其上方並拉長下拉菜單時,該鏈接才會出現。 因此,自動化無法像我的單擊功能一樣單擊它。 我做了一些研究,並使用moveToElementclickAndHold 后者給了我一些希望,但遠非完美。 我發現它沒有完全單擊一半,有時它確實單擊了,但是單擊了下拉菜單中的其他菜單鏈接。 有什么想法可以使它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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM