我在运行测试时遇到这样的错误:
org.mockito.exceptions.base.MockitoException:
No tests found in TestCase
Haven't you forgot @Test annotation?
我当然有一个用@Test
注释的方法。我做错了什么?
答案 0 :(得分:29)
该方法需要明确声明为public
:
@Test
public void asdf() {
asdf...
}
答案 1 :(得分:20)
即使我有一个用@Test
注释的公共方法,我也遇到了这个异常。原来是导入org.junit.jupiter.api.Test
,我改为org.junit.Test
,它工作正常。
答案 2 :(得分:5)
导入junit包而不是testng包。
答案 3 :(得分:1)
根据How to use Mockito with JUnit5,如果您已升级到Junit 5:
“没有规则,没有赛跑者 JUnit 4规则和运行器在JUnit 5中不起作用,因此无法使用MockitoRule和Mockito运行器。“
请改用@ExtendWith(MockitoExtension.class)。在Junit 5.6.2和Spring Boot 2.3.1上对此进行了验证:
@ExtendWith(MockitoExtension.class) @MockitoSettings(strictness = Strictness.LENIENT) public class ClassTest {}
也不要忘记明确将测试方法声明为公共方法。