测试类中的SpringBootTest批注

时间:2019-04-25 19:35:05

标签: java spring-boot junit

在添加第二个测试类后,在jUnit测试期间出现错误。

java.lang.IllegalStateException: Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test

...所以我在SpringBootTest批注中添加了(classes = ...)部分,并且测试运行正常。

@RunWith(SpringRunner.class)
@SpringBootTest(classes = {mySecondJUnitClass.class})
public class mySecondJUnitClass{

我不了解的是,我没有将“类”添加到我的第一个测试类中,我只设置了@SpringBootTest注释并且运行良好。

@RunWith(SpringRunner.class)
@SpringBootTest
public class myFirstJUnitClass{

何时以及为什么我们需要该“类”定义?为什么@SpringBootTest还不够?

1 个答案:

答案 0 :(得分:0)

我找到了答案(在JB Nizet的帮助下)。我的第一个测试类位于主类包的子包中,第二个则没有。所以这就是为什么它需要一个类定义的原因。