Selenium webdriver webdriver点击img标签

Selenium webdriver webdriver点击img标签,selenium-webdriver,Selenium Webdriver,单击img take会打开一个弹出窗口 我尝试了以下代码, @FindBy(css=“#userid_popup>img”) 私有WebElement查找按钮 lookupButton.click()-->元素NotVisibleException ((JavascriptExecutor)driver).executeScript(“返回参数[0]。单击();”,lookupButton)-->即使它单击它本身挂起,之后也不会执行任何语句。 这方面有什么帮助吗?0)确保没有AJAX或其他异步功

单击img take会打开一个弹出窗口

我尝试了以下代码,
@FindBy(css=“#userid_popup>img”)
私有WebElement查找按钮

  • lookupButton.click()
    -->元素NotVisibleException
  • ((JavascriptExecutor)driver).executeScript(“返回参数[0]。单击();”,lookupButton)
    -->即使它单击它本身挂起,之后也不会执行任何语句。
  • 这方面有什么帮助吗?

    0)确保没有AJAX或其他异步功能。马克问了这个问题,但值得仔细检查。只需添加一个显式等待img元素,看看这是否有帮助。(不,不要使用Thread.Sleep()或类似的工具。:)

    1) 将单击目标移动到锚定标记。除非您将某些东西显式地连接到元素,否则单击操作将不起任何作用。它是实际生成弹出窗口的元素。(您也可以在上面的HTML代码片段中看到!)


    祝你好运

    由于您注意到了一个异常,在您尝试执行
    .click()时元素是否实际可见?很高兴知道,只是检查一下。尽管我不得不问,您是否有任何特殊原因试图单击
    img
    标记而不是
    锚定本身?
    
    <td>
        <a id="userid_popup" onclick="openLookupWinNew('/oasis/UserLookup.do', 400, 270, 'userid_input', 'assignToUserId', 'uiAssignToUserId', false)" name="userid_popup">
            <img class="icon" title="Users" alt="Users" src="/oasis/images/search_button1.gif" style="background-color: transparent;">
        </a>
        <input id="hide" type="button" style="display: none">
    </td>