问题标签 [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 投票
2 回答
3370 浏览

java - Maven 插件可以自动从“执行”部分查看“配置”标签吗?

我正在分析一个可以在以下configuration部分配置的 Maven 插件plugin

该插件完全忽略 的任何配置项execution,但是:

我用mvn test. 我确定执行会发生,因为 Mavenid正确打印了它,但未配置插件 - 打印有关不正确设置的警告,当该<configuration>部分移出<executions>.

问题:是插件的实现方式,它只接受“顶级”配置吗?我研究了它的源代码,在我看来,它是 Maven 调用 MOJO 类上的设置器,并且它对于选项来自哪个部分的插件是透明的。

MOJO 注释为:

0 投票
1 回答
664 浏览

javascript - 如何在无头执行期间测试 jQuery UI 对话框

我们的应用程序将jQuery 对话框用于模态弹出窗口。我们正在尝试为我们的 javascript 编写一些单元测试,其中一部分是创建对话框。我们正在使用 Jasmine 和Jasmine Maven 插件。在浏览器中运行测试时,一切正常。但是,当我们尝试无头执行测试 ( mvn jasmine:test) 时,测试会在创建对话框的行上失败。错误看起来像这样:

发生这种情况的行就像这样:

如果有帮助,我们的 pom.xml 有这个插件:

我们可以做些什么来让无头执行与对话内容一起工作?

0 投票
0 回答
200 浏览

javascript - 如何将 testacular 与 jasmine 集成到 maven 常规构建中

我只想在常规的 Maven 构建中运行测试单元测试。

我已经有一个 jasmine 构建在我的项目上工作,我想集成来自 testacular 的浏览器对象来测试我的应用程序的 UI。

是否有可能或者我必须使用 nodejs 来运行 testacular 的测试单元?

预先感谢您的帮助。

0 投票
1 回答
644 浏览

javascript - 使用 Jasmine 和 Maven 2.x 进行 JavaScript 单元测试

我正在使用 Jasmine 来测试我的 javascript。我使用 maven 构建运行 jasmine 脚本。我正在使用 Maven 2.0.11。当我运行 maven build 时,jasmine 会抛出错误,

关于为什么会发生此错误的任何想法?

0 投票
1 回答
95 浏览

jasmine-maven-plugin - Jasmine 具有更好的模块化

我是茉莉花的新手,如果我问错了问题,请纠正我。

我正在开发一个有很多 java 脚本代码的遗留系统。我想为此编写一些测试。最初我想使用 buster,因为它处于测试阶段,我没有对此进行太多探索。与此同时,我在搜索时遇到了茉莉花。在 jasmine 中编写测试很简单,maven 插件使 jasmine 可以与 CI 集成,我们也可以得到覆盖率报告。所以我觉得用茉莉花。

在我们目前的遗留系统中有几个js,需要大量的重构。但是要开始编写一些测试。我需要一些帮助。让我叙述一下我面临的问题

我们有很多脚本有冲突的函数名和全局变量等等。所以在 pom 或 jstestconf 文件中指定 jsSource 很麻烦,因为我需要排除几个文件,有时需要测试的脚本可能有一个冲突的函数名。还有一些脚本可能依赖于其他脚本等等。

茉莉花中有没有办法可以实现下面提到的场景。

测试1.js

  • 包含特定库,不包含常用的一次
  • 包含需要测试的java script(Source1.js)源码
  • 然后编写测试

Test2.js

  • 包含特定库,不包含常用的一次
  • 包括需要测试的javascript源(Source2.js)来测试
  • 然后编写测试

类似于我们所说的junit的东西包括需要测试的类。

通过使用 requirejs 进行一些初步搜索,我可以做到这一点。但我找不到任何具体的例子。

在继续之前,我需要您的意见。还有我使用的任何其他测试框架与 maven 和 eclipse 具有良好的集成以及更好的测试模块化。

0 投票
2 回答
1440 浏览

angularjs - AngularJS jasmine maven插件预加载源路径问题

我想知道为什么某些指向 javascript 库的路径在预加载源部分有效,而有些则无效。

例如

有效,但是

不像茉莉花抱怨对关键字“模块”或“角度”一无所知。这是一个已知的问题?我没有在项目的错误跟踪器中找到任何相关内容。

0 投票
1 回答
465 浏览

javascript - jasmine-maven-plugin:管理依赖项和单独的规范执行

我有一个包含大量 javascript 文件的旧版 Web 应用程序。这些文件需要按顺序加载,其中一些可能有重复的全局函数,以及所有其他坏东西。

我创建了 javascript 模块,我想用 jasmine 对其进行测试。其中一些恰好依赖于一些旧的 javascript 文件。如果我尝试使用 and 包含所有旧资源,它会爆炸,因为旧资源需要按顺序包含,其中一些不能一起包含。有没有相同情况的朋友分享一下你是如何解决这个问题的?

我还尝试使用 $.getScript 在脚本文件中包含相关的 javascript,但是,我遇到的问题之一是 jasmine-maven-plugin 一次性运行了所有规范。因此,$.getScript 将加载冲突源并且测试再次崩溃。

0 投票
1 回答
2241 浏览

unit-testing - angular-mock.js conflicts with htmlunit? How to test angular application using angular-mock.js in maven-jasmine

I'm new to maven and jasmine, and I have a problem setting up maven to run unit tests on an angular application. I get into trouble as soon as I add angular-mocks.js to the test/javascript/lib folder.

mvn test throws a htmlunit.ScriptException just by adding the angular-mocks file. If I remove the file, it runs just fine (without the parts relying on mocking of course, but they fail as a unit test rather than throwing an error).

Does anyone know what could cause this error and how to fix it?


EDIT
I stronly suspect that this is a htmlunit problem, because the error differs when changing the <browserVersion>:

CHROME gives:

TypeError: Cannot find function attachEvent in object [object HTMLDocument]. (http://localhost:55408/src/lib/angular.js#1568)

FIREFOX_3_6 gives:

Exception invoking Node.removeEventListener() with arguments [String, NativeArray, Boolean]

INTERNET_EXPLORER_9 gives:

Exception invoking Node.detachEvent() with arguments [String, NativeArray]


Stack trace (excerpt FF):

pom.xml (excerpt):

Both adding angular-mocks.js to the test/javascript/lib folder and referencing it directly from the angularjs website give the same error.

0 投票
1 回答
514 浏览

maven - 如何从 jasmine maven 插件中引用打包的资源?

我想用jasmine-maven-plugin来测试我的 Mavenmy-webapp项目。该项目依赖于另一个my-lib项目,其中包含一些必需的 JavaScript 库。构建项目时my-webapp,它会将my-libJAR 添加到WEB-INF/lib/生成的 WAR 的路径中。在my-libJAR 中,所需的 JS 资源位于文件夹META-INF/resourcesMETA-INF/test-resources.

如何从jasmine-maven-plugin目标jasmine:bdd中引用这些打包资源jasmine:test

请注意,我也尝试在integration-test阶段中运行目标,如此所述,但我仍然无法引用所需的资源。

更新:会jetty:run-warjasmine-maven-plugin帮助中运行吗?如果是这样,我该如何实现?

0 投票
1 回答
318 浏览

javascript - 为什么我的 jasmine 与指定的 browserVersion 没有失败?

我已经为我的应用程序设置了 jasmine 测试。在我的应用程序中,我有不应在 IE8 中工作的 javascript:

当我运行 mvn jasmine:bdd 并在 Internet Explorer 中打开测试页面(browserMode 设置为 Internet Explorer 8)时,它按预期失败:

但是,当我运行时:

我所有的测试都是成功的。日志指定 browserVersion 设置为 INTERNET_EXPLORER_8。

我希望两者都能给我相同的结果。这导致我们的 ci 测试出现问题,因为它释放了我想要捕获的 js 错误。

这是否应该按我的预期工作,如果没有,我应该改变什么?

此外,这是我知道如何测试多个浏览器的最佳方式。有没有更好的方法让我想念?

编辑

一位同事试图打破我对 browserVersion 甚至不会捕获此类错误的希望,并建议它只是为了更改标头,以便测试也可以涵盖特定于浏览器的 javascript(仅在浏览器是特定版本)。这是准确的吗?