JUnit自动化单元测试(四):@RunWith测试套件运行器的使用

来源:互联网 发布:抛光砖 抛釉砖 知乎 编辑:程序博客网 时间:2024/05/17 08:00

一些常用的测试方法前面已经说了,但有人又说了,JUnit为项目里每个类都创建一个对应的测试类,虽然一次能把类里面所有的方法都测试一遍,但是,我一个项目有可能有上千百个类,总不能每个类都点一下进行测试吧。
没错,@RunWith注解就是为了这种情况,我们先声明用套件运行器进行测试,然后把需要进行测试的所有类放进套件(集合)里面,一次就可以把所有类所有方法测试完,也叫打包测试。当我们没有声明的时候默认的则是JUnit自带的运行器,一次只能测试一个类。
见代码:

//这里有三个可以放到一起测试的类TaskTest1 、TaskTest2 、TaskTest3,package junit.demo;import org.junit.Test;public class TaskTest1 {        @Test        public void test() {            System.out.println("this is TaskTest1");        }    }package junit.demo;import org.junit.Test;public static class TaskTest2 {        @Test        public void test() {            System.out.println("this is TaskTest2");        }    }package junit.demo;import org.junit.Test;public static class TaskTest3 {        @Test         {            System.out.ppuntln("this is TaskTest3");        }    }

接着我们新建一个套件类,用套件运行器Suite

package junit.demo;import org.junit.runner.RunWith;import org.junit.runners.Suite.SuiteClasses;import org.junit.runners.Suite;@RunWith(Suite.class) //声明套件运行器@SuiteClasses({TaskTest1.class,TaskTest2.class,TaskTest3.class}) //将需要一起测试的类放进来public class SuiteTest {    /*      * 测试套件就是组织测试类一起运行的      * 写一个作为测试套件的入口类,这个类里不需要包含其他的方法      * 1.更改测试运行器Suite.class      * 2.将要测试的类作为数组传入到Suite.SuiteClasses({})      */}

接着,我们只测试SuiteTest 这一个类就可以看到全部测试类的测试结果了。
@RunWith最主要是声明测试的运行器,都在org.junit.runners.下面有声明,其他的一般用不到了,有兴趣的朋友可以共同探讨分享。

阅读全文
1 0
原创粉丝点击