在while循环中,如何仅单击列表Web元素中的链接一次?

时间:2019-07-05 05:04:00

标签: javascript java selenium selenium-webdriver

我只需要单击一次显示在列表Web元素中的链接

我有不断在页面上弹出的动态元素,整个程序就是单击弹出链接并打开新窗口,以便我可以在新打开的窗口中执行某些操作。我已经尝试了下面附带的代码,甚至在我的while语句结束之前都使用了break语句(这始终是对的),但是它只解决了一次问题并停止了循环。下面附带的小代码通过打开新窗口来无限点击链接,而不会停止。请帮助我仅单击一次列表Web元素中的链接,并使代码在while循环中运行

Actions newwin = new Actions(driver);

boolean clicked = true;

while (clicked) {
    driver.navigate().refresh();
    List < WebElement > fungua = driver.findElements(By.partialLinkText("309"));
    //THEN CLICK ON THE SUBMIT BUTTON 
    fungua.forEach(e - > {
        newwin.keyDown(Keys.SHIFT).click(e).keyUp(Keys.SHIFT).build().perform();
    });
}

我不是该领域的专家,但是我设法使所有其他代码都能按预期工作,但是上面的问题只是使我无法继续前进。我已经尝试了很多天了,我认为您可能会无限期地帮助您运行上面的代码,但是只单击一次列表Web元素中的链接。预先感谢。

0 个答案:

没有答案