gpt4 book ai didi

java - Maven Surefire Junit 测试套件

转载 作者:行者123 更新时间:2023-12-01 01:00:14 27 4
gpt4 key购买 nike

我正在使用 Maven Surefire 插件来运行特定的测试套件。
例如:

package suite;

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

import suite.slow.EvenSlowerClassTest;
import suite.slow.SlowClassTest;

@RunWith(Suite.class)
@Suite.SuiteClasses({
SlowClassTest.class,
EvenSlowerClassTest.class
})
public class SlowSuite {

}

通过使用 maven 命令
test -DrunSuite=**/FastSuite.class -DfailIfNoTests=false

我可以显式运行 FastSuite 或 SlowSuite 测试套件,但是,如何运行我拥有的所有测试套件或测试套件中未涵盖的所有测试?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>${runSuite}</include>
</includes>
</configuration>
</plugin>

最佳答案

我在我们的一些项目中所做的是使用 <profiles>pom.xml激活特殊的测试套件。如果没有配置文件处于 Activity 状态,则所有测试都将使用 mvn test 运行(我希望这就是你要找的)

像这样:

<profile>
<id>commit-test</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.3</version>
<configuration>
<groups>com.test.CommitTest</groups>
</configuration>
</plugin>
</plugins>
</build>

像这样注释的测试类:
@Category(CommitTest.class)
public class SomeTestClass {
}

我不知道它是否适用于 @Suite@RunWith但是如果你的测试套件不是太多的类,那么改变它应该不难。

命令: mvn clean test -Pcommit-test

关于java - Maven Surefire Junit 测试套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35009232/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com