何时使用@RunWith以及何时使用@ExtendWith

问题描述

答案可以在文档中找到:

如果您使用的是JUnit 4,请不要忘记将@RunWith(SpringRunner.class)添加到测试中,否则注释将被忽略。如果您使用的是JUnit 5,则无需将等效的@ExtendWith(SpringExtension.class)添加为@SpringBootTest,而其他@…Testannotations已经对其进行了注释。

解决方法

我的团队和我一直在使用Spring Boot开发大量微服务。由于服务是通过JUnit和Spring Boot升级(我们现在使用的是Spring Boot
2和JUnit 5),因此由不同开发人员实现的不同JUnit现在使用具有以下特征的不同模式:

  • @ExtendWith
  • @RunWith

今天,这两者之间有什么区别?我们是否真的需要将它们用于单元测试或嵌入到一些新的Spring Boot注释中?

相关问答

如何检查配对的蓝牙设备是打印机还是扫描仪(Android)
是否允许实体正文进行HTTP DELETE请求?
如何将ZipInputStream转换为InputStream?
java.util.logging Java 8中的变量
PowerMockito.doReturn返回null
JavaMail问题:无法将命令发送到SMTP主机