首页 > 解决方案 > 使用 RunWith(Junit4::class) 注释运行测试与不使用它的区别

问题描述

我尝试在没有 @RunWith(JUnit4::class) 注释的情况下运行特定测试,它似乎确实有效。

这里@RunWith注解有什么意义?它有什么不同,它增加了什么价值

标签: javaandroid

解决方案


简单来说——我们可以通过使用@RunWith注释来注释我们的测试类来使用自定义测试运行器。

如果一个测试类没有这个注解,JUnit 4 会使用称为 BlockJUnit4ClassRunner 的默认测试运行器来运行它。

JUnit Runners 具有很强的适应性,可以让开发者改变测试执行过程和整个测试过程。

例如,JUnit 4 中的套件是使用 RunWith 构建的,以及一个名为 Suite 的自定义运行器:

 @RunWith(Suite.class)
 @SuiteClasses({ATest.class, BTest.class, CTest.class})
 public class ABCSuite {
 }

推荐阅读