我已经通过flappoodle(de.flapdoodle.embed)设置了一个嵌入式mongo。 相当多的mongo操作,因此我想将它们全部作为一个套件运行,并在测试套件中仅设置一次mongo。 现在,当我通过mvn install运行测试用例时,似乎可以单独运行测试用例。
是否有一种方法只能从套件而不是类中运行测试用例。
答案 0 :(得分:1)
baeldung.com介绍了非常适合您的情况的JUnit 5标签的使用。
您可以使用两个不同的标签标记测试:
@Test
@Tag("MyMongoTests")
public void testThatThisHappensWhenThatHappens() {
}
@Test
@Tag("MyTestsWithoutMongo")
public void testThatItDoesNotHappen() {
}
并执行套件中的任一设置,例如
@IncludeTags("MyMongoTests")
public class MyMongoTestSuite {
}
在您的情况下,可以根据Mongo是否在应用程序上下文中对测试进行分类。因此,从理论上讲,可能可以创建一个JUnit 5 Extension来添加标签。不过那将是更复杂的解决方案。