教程 > junit 教程 > 阅读:25

junit 测试套件——迹忆客-ag捕鱼王app官网

在实际项目中,随着项目进度的开展,单元测试类会越来越多,可是直到现在我们还只会一个一个的单独运行测试类,这在实际项目实践中肯定是不可行的。为了解决这个问题,junit 提供了一种批量运行测试类的方法,叫做测试套件。

这样,每次需要验证系统功能正确性时,只执行一个或几个测试套件便可以了。测试套件的写法非常简单,我们需要遵循以下规则:

  1. 创建一个空类作为测试套件的入口。
  2. 使用注解 org.junit.runner.runwith 和 org.junit.runners.suite.suiteclasses 修饰这个空类。
  3. 将 org.junit.runners.suite 作为参数传入注解 runwith,以提示 junit 为此类使用套件运行器执行。
  4. 将需要放入此测试套件的测试类组成数组作为注解 suiteclasses 的参数。
  5. 保证这个空类使用 public 修饰,而且存在公开的不带有任何参数的构造函数

新建 junittestone 测试类:

junittestone

package test;
import org.junit.assert;
import org.junit.test;
/**类描述:
 *@author: zk
 *@date: 日期:2018-6-6 时间:下午3:56:17
 *@version 1.0
 */
public class junittestone {
    @test
    public void test() {
        system.out.println("测试一。。。");  
        assert.asserttrue(true);  
    }
}

新建 junittesttwo 测试类:

junittesttwo

package test;
import org.junit.assert;
import org.junit.test;
/**类描述:
 *@author: zk
 *@date: 日期:2018-6-6 时间:下午3:58:56
 *@version 1.0
 */
public class junittesttwo {
    @test
    public void test() {
         system.out.println("测试二。。。");  
         assert.asserttrue(true);  
    }
}

新建测试套件类:

junit 测试套件

junit 测试套件

package test;
import org.junit.runner.runwith;
import org.junit.runners.suite;
import org.junit.runners.suite.suiteclasses;
/**类描述:
 *@author: zk
 *@date: 日期:2018-6-6 时间:下午4:00:06
 *@version 1.0
 */
@runwith(suite.class)
@suiteclasses({ junittestone.class,junittesttwo.class })
public class alltests {
}

junit 测试套件

测试通过,控制台输出:

junit 测试套件

上例代码中,我将2个测试类放入了测试套件 alltests 中,在 eclipse 中运行测试套件,可以看到2个测试类被调用执行了。测试套件中不仅可以包含基本的测试类,而且可以包含其它的测试套件,这样可以很方便的分层管理不同模块的单元测试代码。

注意 :一定要保证测试套件之间没有循环包含关系,否则无尽的循环就会出现在我们的面前。

查看笔记

扫码一下
查看教程更方便
网站地图