在基于maven的项目中自动化javascript测试
我有一个基于maven的Java项目,其中还包含一些javascript函数,我希望能够对这些函数进行测试。我正在使用QUnit(但可以切换到另一个js测试框架)来编写测试,但我必须执行在基于maven的项目中自动化javascript测试,javascript,maven,testing,qunit,Javascript,Maven,Testing,Qunit,我有一个基于maven的Java项目,其中还包含一些javascript函数,我希望能够对这些函数进行测试。我正在使用QUnit(但可以切换到另一个js测试框架)来编写测试,但我必须执行index.html才能在浏览器窗口中看到测试的运行 是否有一个当前有效的maven插件可以为我运行这些测试,并理想地将结果与我已经拥有的常规服务器端junit测试一起呈现 我已经尝试过使用当前的解决方案,但大多数解决方案都是旧的,并且文档也不完整。我能得到的最接近的方法是使用,但它在一个junit测试中运行所有
index.html
才能在浏览器窗口中看到测试的运行
是否有一个当前有效的maven插件可以为我运行这些测试,并理想地将结果与我已经拥有的常规服务器端junit测试一起呈现
我已经尝试过使用当前的解决方案,但大多数解决方案都是旧的,并且文档也不完整。我能得到的最接近的方法是使用,但它在一个junit测试中运行所有js测试,并在第一次失败时停止。从Maven运行js测试 有很多方法可以调用npm命令。这是一个演示项目,展示了不同类型的测试,所以它的配置比通常要复杂一些。以下是安装软件包的方式:
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>0.0.24</version>
<executions>
<execution>
<id>Install NodeJS and NPM</id>
<goals>
<goal>install-node-and-npm</goal>
<goal>npm</goal>
</goals>
<configuration>
<nodeVersion>v0.12.7</nodeVersion>
<npmVersion>2.11.3</npmVersion>
</configuration>
</execution>
</executions>
</plugin>
com.github.eirslett
具有多种语言和框架的适配器的工具(如果您的框架没有适配器,则编写自己的适配器相对容易)
<execution>
<id>UI Unit Tests</id>
<goals>
<goal>karma</goal>
</goals>
<configuration>
<karmaConfPath>${project.basedir}/src/test/unit-js/karma.conf.js</karmaConfPath>
<skip>${unit.ui.tests.skip}</skip>
</configuration>
</execution>
<execution>
<id>UI Component Tests</id>
<goals>
<goal>npm</goal>
</goals>
<phase>test</phase>
<configuration>
<arguments>run component</arguments>
<skip>${component.ui.tests.skip}</skip>
</configuration>
</execution>