我有3个JUnit测试用例,它们作为测试套件的一部分运行。测试套件将启动和停止这些测试类使用的嵌入式Rabbit MQ服务器。
@RunWith(Suite.class)
@Suite.SuiteClasses({
TestQueueGateway.class,
TestRabbitMQConnectionFactory.class,
TestRabbitMQQueue.class
})
public class RabbitMQIntegrationTestSuite {
@BeforeClass
public static void setupRabbitMQServer() {
//Start embedded server
}
@AfterClass
public static void _tearDownAfterClass() {
//stop server
}
}
我可以在Eclipse中运行此测试套件,并查看测试用例是否正确。但是,当我运行Maven构建时,这3个测试类将独立运行并失败,因为它们没有所需的服务器设置。
请让我知道如何使3个测试类仅作为测试套件的一部分运行,而不在Maven构建期间独立运行?
答案 0 :(得分:1)
使用maven-surefire-plugin来包含您的测试套件,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includes>
<include>**/RabbitMQIntegrationTestSuite.java</include>
</includes>
</configuration>
</plugin>