gpt4 book ai didi

javascript - 使用 jQuery v2.0.2 和 Play Framework 运行 Selenium 测试时出错

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:18 26 4
gpt4 key购买 nike

我不是 selenium 方面的专家,但我相信我在尝试使用 jQuery v2.0.2 时可能发现了一个错误。当我将 jQuery v2.0.2 与我的 Play Framework 2.2.1 应用程序一起使用时,而不是捆绑的 jQuery v.1.9.0,我在运行“Play 测试”时收到以下错误:

[error] Driver info: driver.version: HtmlUnitDriver
[error] at org.openqa.selenium.htmlunit.HtmlUnitDriver.get(HtmlUnitDriver.java:367)
[error] at org.openqa.selenium.htmlunit.HtmlUnitDriver.get(HtmlUnitDriver.java:346)
[error] at org.fluentlenium.core.Fluent.goTo(Fluent.java:228)
[error] at IntegrationTest$1.invoke(IntegrationTest.java:22)
[error] at IntegrationTest$1.invoke(IntegrationTest.java:20)
[error] at play.test.Helpers.running(Helpers.java:433)
[error] at IntegrationTest.test(IntegrationTest.java:20)
[error] ...
[error] Caused by: com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot find function addEventListener in object [object HTMLDocument]. (http://localhost:3333/assets/javascripts/jquery-2.0.2.min.js#4)

通过使用“play new tmp”创建一个全新的 Play Java 项目,我能够重现此错误。创建项目后,我可以很好地“进行测试”。然后我将 jquery-2.0.2.min.js 复制到 public/javascripts 文件夹中。然后我更新了 main.scala.html 文件以使用 jquery-2.0.2.min.js 而不是捆绑的 jquery-1.9.0.min.js。这足以通过运行“Play 测试”再次导致这个确切的错误。

我也尝试过使用 FIREFOX WebDriver 帮助程序类,但再次失败。

任何关于我们如何让 Selenium/Fluentlenium 与 2.0.2 版本的 jQuery 一起工作的见解将不胜感激 :) 谢谢!

最佳答案

根据Selenium Wiki , HtmlUnitDriver 模拟(真实)浏览器的 JS 行为。您可以通过更改它模拟的浏览器来更改行为。这可能有助于解决您的问题。正如他们所说,HtmlUnitBrowser 的 JS(和 DOM)实现并不完整,可能会出现错误/问题,就像您遇到的那样。

如果可能,请尝试使用其他浏览器(Firefox 或 chrome?),并在浏览器中打开网站时检查网站是否正常运行。打开 javascript 控制台(如果您使用 Firefox,则打开 Firebug)并仔细检查您的 jQuery 版本是否正常工作。

关于javascript - 使用 jQuery v2.0.2 和 Play Framework 运行 Selenium 测试时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21945824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com