【问题标题】:HtmlUnit doesn't load externally referenced javascriptHtmlUnit 不加载外部引用的 javascript
【发布时间】:2010-05-18 14:40:29
【问题描述】:

我在尝试使用 HtmlUnit 测试 Web 应用程序时遇到了问题。请记住,我使用 HtmlUnit 的时间不长,所以我可能会遗漏一些琐碎的东西。

由于某种原因,没有加载外部引用的 javascript。当我将页面打印为 xml 时,我得到的只是:

<script language="javascript" src="urltofile.js">  
</script>  

如您所见,脚本标记应包含 javascript 时为空。我错过了什么?我整个早上都在搜索解决方案,但没有找到任何相关信息。任何帮助将不胜感激!

【问题讨论】:

    标签: javascript htmlunit


    【解决方案1】:

    经过许多小时的谷歌搜索,我发现解决方案非常简单。我所要做的就是在检索到页面后等待几秒钟,以便在执行其他任何操作之前让 javascript 有时间执行。老实说,我可以说找到解决方案有点虎头蛇尾,但至少我现在可以继续做更重要的事情了。 :)

    【讨论】:

    • 您通常希望在准备好文档或加载窗口时做一些事情,只是为了确定。此外,我认为将 type="text/javascript" 包含到脚本标签中通常被认为是好的卫生习惯。
    • 我在 htmlunit 2.8 中也遇到过同样的问题,也发现这些 webClient 函数没有帮助(尽管 API 文档表明这两个函数是实验性的,功能不全):webClient.waitForBackgroundJavaScript()或 webClient.waitForBackgroundJavaScriptStartingBefore()。
    【解决方案2】:

    该标签加载了一个外部文件:“urltofile.js”,因此没有任何内容并不奇怪,因为 js 代码是从该文件加载的,而不是注入到现有标记中。

    【讨论】:

    • 啊,我明白了。关于如何将脚本注入现有代码的任何想法?
    猜你喜欢
    • 2011-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多