问题标签 [jasmine-maven-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
258 浏览

google-app-engine - 无论如何让我的 Jasmine 测试在本地 gae 服务器上运行

我正在尝试使用 Jasmine 针对我们的后端 API 测试我的骨干前端。

我们的应用是基于google app engine构建的,我们的构建系统使用maven,所以我使用了jasmine-maven-plugin来方便测试前端与API的集成。

但是,当我尝试运行测试时,没有任何 REST API 调用可用(这是有道理的,因为服务器 jasmine 启动仅用于 jasmine 测试)。

有谁知道让 Jasmine 插件使用“gae:run”目标启动的码头服务器的方法?

因为有大量经过身份验证的调用,所以进行前端测试的服务器和 API 需要相同,包括端口(或者都是跨域请求)。

0 投票
8 回答
72022 浏览

javascript - 在 Jasmine 测试中将对 console.log() 的调用重定向到标准输出

我通过 jasmine-maven-plugin 使用 Jasmine,我想在 Maven 构建输出中看到 console.log() 消息。有没有办法做到这一点?

如果无法重定向 console.log(),是否有任何其他方法可以从我的测试中记录日志,以便它们显示在 Maven 构建输出中?

我正在以无头方式在 Jenkins 上运行这些测试,并且想要一种从测试中获得一些调试输出的方法。

0 投票
2 回答
1068 浏览

maven - 设置 jasmine-maven-plugin 失败使 jenkins 不稳定

如果测试失败,我想配置jasmine-maven-plugin以使 jenkins 不稳定,但唯一的选项似乎是:

  1. 将 haltOnFailure 设置为 true 并让失败中断构建
  2. 将 haltOnFailure 设置为 false 并在日志中报告失败,但构建成功。

有没有办法在测试后检查日志并将构建标记为不稳定?

0 投票
2 回答
1026 浏览

javascript - HtmlUnit 和 jasmine-maven-plugin 是否支持 HTML5 sessionStorage?

我正在尝试在 jasmine-maven-plugin 上测试使用 HTML5 sessionStorage 的 JavaScript 函数。Jasmine 使用 HtmlUnit 来模拟 Web 浏览器。

问题是,当自动化测试在 Maven 构建期间运行时,它说:

  • 错误:预期是间谍,但得到了功能。

我已经尝试过如何在 FF 中本地处理 sessionStorage(用于测试),然后出现此错误:

  • TypeError:类型对象的预期参数,但文件中有类型对象:...

但是,如果我尝试在导入 jasmine.js 的网页上运行 Jasmine,则测试效果很好。我也试过这个我可以使用 HTMLUnit 访问 HTML5 存储,但没有成功。

一个适用于http://tryjasmine.com/而不是 jasmine-maven-plugin 的代码示例:

有人有想法吗?

谢谢。

0 投票
3 回答
1293 浏览

unit-testing - 在没有浏览器的情况下运行 jstd-maven-plugin 测试

我已经启动并运行了jsTestDriver,并且我使用jstd-maven-plugin在构建期间运行测试。

插件需要指定浏览器才能工作,我想使用类似rhinohtmlunit的东西,它们实际上不会启动浏览器。

jasmine-maven-plugin使用htmlunit执行此操作,并且效果很好。

有没有办法为jstd-maven-plugin指定一个无头浏览器?

0 投票
1 回答
2389 浏览

javascript - jasmine-maven-plugin 加载源文件及其依赖项

我有一堆我想测试的 javascript 文件,位于 src/main/webapp/js,但是当我尝试在命令行上构建时,由于缺少库文件,我得到了一堆错误我的每个源脚本都依赖。我试图将它们包含在“sourceIncludes”标签中,但这似乎无济于事。但是,我可以一次将它们全部放在“preloadSources”标签中,但我宁愿不这样做。

此外,我的一些源文件具有与 DOM 交互的函数,包括 .html 文件,其中包含这些函数所需的元素:

“net.sourceforge.htmlunit.corejs.javascript.EcmaError:ReferenceError:“XML”未定义”

我的 pom.xml 下面:

0 投票
1 回答
555 浏览

javascript - Jasmine Maven 插件,包括我使用文件协议的脚本

我正在尝试将 javascript 单元测试添加到我们的项目中,并发现了Jasmine Maven Plugin。我按照指示在我的 pom.xml 中结束了这个:

我运行mvn jasmine:bdd并获得预期的输出。然后我去,http://localhost:8234我得到的只是一个空白屏幕。我查看控制台并查看我的每个 js 文件:

该页面的 HTML 包括我的脚本,如下所示:

所以我的问题是,为什么插件使用文件协议来包含 js?这是它通常的工作方式吗?如果是这样,我如何让我的浏览器允许本地资源?有没有办法阻止它这样做?

以防万一,我在 Firefox 和 Chrome 上都试过了,我使用的是 OS X。

0 投票
1 回答
1086 浏览

jquery - Jasmine maven 插件和 jasmine-jquery 不同的结果

我的项目是标准的 maven java 项目。我正在尝试将 jasmine-maven 插件包含到我的 CI 中。但是当我运行 command 时mvn clean install,它会正确运行测试。但是,如果我mvn jasmine:bdd从浏览器运行并运行测试。我的 html 装置未加载。

这是我的项目结构。

这是我的 pom.xml

当我从浏览器运行测试时。所有的 html 固定装置都是 404。有没有办法让两种方式都起作用?

这就是我加载夹具的方式

这是我的 jasmine-jquery 路径配置

0 投票
1 回答
1163 浏览

jasmine - jasmine-maven-plugin jasmine:bdd 工作 mvn 测试破坏了构建

我已经建立了一个 maven 项目来使用 jasmin-maven-plugin 来测试我的 javascript 代码。插件是这样设置的:

我编写了一个使用 jQuery 进行事件处理的 javascript 方法。代码是这样的:

然后我写了一个茉莉花规范来测试这个功能。代码在这里:

我可以从命令行运行 mvn jasmine:bdd,然后访问

运行测试。这很好用,我的所有规格都通过了。然后我尝试使用 mvn test 从 maven 运行测试,但随后它中断了。它说 :

这让我怀疑 jQuery 事件系统在从 mvn test 运行时无法正常工作,因此在 HtmlUnit 浏览器中运行。有人知道如何解决这个问题吗?

0 投票
1 回答
501 浏览

javascript - 如何使用 jasmine maven 插件在浏览器中查看所有测试规范的结果

我正在使用 jasmine maven 插件,我的 pom.xml 看起来像这样:

在该unit目录中,我有多个 js 文件,其中包含我要运行的所有测试。当我运行mvn jasmine:bdd然后进入localhost:8234浏览器时,它只运行目录中第一个文件的测试。当我运行mvn jasmine:test它时,它会运行我的所有规格。我只想知道如何在浏览器窗口中获得所有规格的结果。我希望我只是在这里遗漏了一些明显的东西。