实际开发完成后,我们经常可能在一个单元测试类中进行多个方法的单元测试,但是每次只想对某一个方法进行单元测试,这时我们可以使用@Ignore注解来跳过其他方法,仅仅对指定的某个方法进行单元测试,这里分享一下@Ignore注解的使用。
下面代码如果你直接对整个类执行单元测试,则将调用test1()、test2() 和 test3() 单元测试方法。如下:
import org.junit.Test; public class AppTest { @Test public void test1(){ System.out.println("exec:test1测试方法"); } @Test public void test2(){ System.out.println("exec:test2测试方法"); } @Test public void test3(){ System.out.println("exec:test3测试方法"); } }
Run -> Junit Test,执行单元测试控制台输出,我们看到test1、test2、test3方法均执行了:
exec:test1测试方法 exec:test2测试方法 exec:test3测试方法
在 @Test 之前或 @Test 之后使用 @Ignore 注解,可以让该方法跳过单元测试,跳过指定的测试方法;
import org.junit.Ignore; import org.junit.Test; public class AppTest { @Test public void test1(){ System.out.println("exec:test1测试方法"); } @Ignore // 忽略测试 @Test public void test2(){ System.out.println("exec:test2测试方法"); } @Test @Ignore // 跳过测试 public void test3(){ System.out.println("exec:test3测试方法"); } }
Run -> Junit Test,执行单元测试控制台输出,对test2、test3方法使用@Ignore注解后,我们看到只有test1方法均执行了:
exec:test1测试方法
如果将 @Ignore 放置到类上面,则整个类将被忽略。如下:
import org.junit.Ignore; import org.junit.Test; @Ignore // 忽略整个单元测试类中的测试方法 public class AppTest { @Test public void test1(){ System.out.println("exec:test1测试方法"); } @Test public void test2(){ System.out.println("exec:test2测试方法"); } @Test public void test3(){ System.out.println("exec:test3测试方法"); } }
原文地址: