【问题标题】:JavaScript code runs perfectly in FireFox console and not in EclipseJavaScript 代码在 FireFox 控制台中完美运行,而不是在 Eclipse 中
【发布时间】:2017-07-27 12:38:30
【问题描述】:

我在 Eclipse 中使用 Selenium JUnit 运行测试脚本。现在,当我将以下 JS 代码添加到我的 Java 文件中时,测试用例停止并出现错误“selenium.JavascriptException: TypeError: document.querySelector(...) is null
脚本在 FireFox 控制台中运行良好。
我是 JavaScript 新手,如果有人能帮助我解决这个问题,我将不胜感激。

        if (driver instanceof JavascriptExecutor) {
        ((JavascriptExecutor)driver).executeScript(""
                + "some other code that works fine"
                + "var rtxt= document.querySelector('#CSS__RichHtmlField_displayContent');"
                + "rtxt.textContent= '​JavaScript testScript to testCase';");

    } else {
              throw new IllegalStateException("This driver does not support JavaScript!");
    }

【问题讨论】:

    标签: javascript java eclipse selenium firefox


    【解决方案1】:

    可能是 Firefox 在运行脚本和检查值之前等待页面和信息加载。在 Java 实现中,我认为您需要在检查值之前等待,否则您会因为事物不存在/尚未加载而出现错误。

    http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp

    【讨论】:

    • 现在可以了!我在 js 脚本之间添加了 Java 等待命令(隐式和显式),它起作用了!不知道为什么我使用js延迟时它不起作用。
    猜你喜欢
    • 1970-01-01
    • 2022-09-28
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 2013-01-06
    • 1970-01-01
    • 2012-09-18
    相关资源
    最近更新 更多