Selenium java - 不支持jquery

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Selenium java - 不支持jquery相关的知识,希望对你有一定的参考价值。

当我点击一个按钮它应该执行一个javascript函数但我得到这个例外。

net.sourceforge.htmlunit.corejs.javascript.EcmaError: ReferenceError: "$" is not defined.

这是功能:

function selectAll(){
    $(".role option").attr("selected","selected");
}

我正在使用selenium-java-2.49.1和htmlunit进行测试。

我的问题是如何让selenium识别jquery?

我不能修改javascript函数,如果我手动点击按钮,它工作正常。

答案

请提供更多详情。如果您方可公开,请出示您的代码,以便我们有机会验证/了解您的问题。

一般来说:HtmlUnit支持jQuery,整个jQuery测试套件是HtmlUnit测试套件的一部分。

您正在使用旧的selenium / htmlunit版本。请尝试使用最新版本并报告结果。

关于webClient.getOptions()。setThrowExceptionOnScriptError(false);这不是一个肮脏的尝试,将此设置为false是我所知道的每个真实浏览器的工作方式。因为HtmlUnit的主要焦点是支持测试人员,并且最终支持人们构建表现良好的Web应用程序,所以默认情况下这个选项是真的,以便尽早找到错误。

最后。是的,HtmlUnit不支持当今现代浏览器中提供的所有js功能。但我们会尝试在每次发布时改进这一点。如果您有问题请打开机票,我们会尽力提供改进版本。

以上是关于Selenium java - 不支持jquery的主要内容,如果未能解决你的问题,请参考以下文章

python+selenium十一:jQuery和js语法js处理iframe

python+selenium十一:jQuery和js语法js处理iframe

Selenium Webdriver - 等待页面在 Java 和 JavaScript 中完全加载(ajax/jquery/animation 等)

Java Selenium检查复选框标签状态

selenium 支持c语言吗

geckodriver 支持多少火狐47版本