我正在做一个使用Maven编写的项目。
如果我这样做了
mvn clean install 然后,我预计它将在/test forder下运行所有单元测试。
我重定向了构建过程,并将其存储到输出文件中,并尝试通过名称查找单元测试。但是,我找不到一些单元测试。看起来有些单元测试实际上并没有在构建过程中执行。
我的问题是,我如何知道在构建过程中将执行的单元测试的选择。
发布于 2013-03-27 06:54:12
您可以尝试在命令行中显式命名组,如下所示:
mvn clean install -Dtest.groups="unit,integration"或者简单地说
mvn test -Dtest.groups="unit,integration"这是我日常使用的一个例子。我的测试要么在单元中,要么在集成组中。如果您希望运行所有(或某些)测试,而不需要显式指定要使用哪个gorup,则必须修改maven配置。
发布于 2013-03-27 16:04:13
Maven中的单元测试将根据其名称进行选择,该名称应遵循naming convention
<includes>
<include>**/*Test*.java</include>
<include>**/*Test.java</include>
<include>**/*TestCase.java</include>
</includes>此外,您需要将测试放到缺省位置src/test/java/.
您可以使用以下命令来控制仅运行一个测试:
mvn -Dtest=MyTest test运行集成测试是maven-failsafe-plugin的工作,在集成测试阶段进行处理。集成测试的命名约定为:
<includes>
<include>**/*IT*.java</include>
<include>**/*IT.java</include>
<include>**/*ITCase.java</include>
</includes>要运行集成测试,您需要为maven-failsafe-plugin添加一个配置部分。
https://stackoverflow.com/questions/15648557
复制相似问题