关于测试集,实质就是包含若干个测试类的集合,通过一个具体的实例,让我们来了解一下Junit的测试集

  1. package org.yezi.junit;
  2. public class Calcaute {
  3. public int ride(int a, int b){
  4. return a * b;
  5. }
  6. public int add(int a, int b){
  7. return a + b;
  8. }
  9. public int reduce(int a, int b){
  10. return a - b;
  11. }
  12. }
  1. package org.yezi.junit;
  2. import org.junit.Test;
  3. import static org.junit.Assert.*;
  4. public class TestAdd {
  5. @Test
  6. public void testAdd(){
  7. Calcaute calcaute = new Calcaute();
  8. int result = calcaute.add(80, 20);
  9. assertEquals(100, result);
  10. }
  11. }
  1. package org.yezi.junit;
  2. import org.junit.Test;
  3. import static org.junit.Assert.*;
  4. public class TestReduce {
  5. @Test
  6. public void testReduce(){
  7. Calcaute calcaute = new Calcaute();
  8. int result = calcaute.reduce(80, 20);
  9. assertEquals(60, result);
  10. }
  11. }
  1. package org.yezi.junit;
  2. import org.junit.Test;
  3. import static org.junit.Assert.*;
  4. public class TestRide {
  5. @Test
  6. public void testRide(){
  7. Calcaute calcaute = new Calcaute();
  8. int result = calcaute.ride(80, 20);
  9. assertEquals(1600, result);
  10. }
  11. }
  1. package org.yezi.junit;
  2. import org.junit.Test;
  3. import org.junit.runner.RunWith;
  4. import org.junit.runners.Suite;
  5. import org.junit.runners.Suite.SuiteClasses;
  6. import static org.junit.Assert.*;
  7. @RunWith(value=Suite.class)
  8. @SuiteClasses(value={
  9. TestAdd.class, TestReduce.class, TestRide.class})
  10. public class TestAllRunner {
  11. @Test
  12. public void testAdd(){
  13. Calcaute calcaute = new Calcaute();
  14. int result = calcaute.add(10, 20);
  15. assertEquals(20, result);
  16. }
  17. }

其中,Calcaute.java是我们的业务代码;TestAdd.java、 TestReduce.java、TestRide.java是三个测试类;TestAllRunner.java是一个测试运行器。

在TestAllRunner.java中我们使用@RunWith(value=Suite.class)注解声明该类是一个测试集;
使用@SuiteClasses(value={TestAdd.class, TestReduce.class, TestRide.class})声明该测试集所包含的测试类,运行结果正常通过。

但是我们在TestAllRunner.java声明的一个测试却没有运行(因为这个测试应该不能通过的),这是因为我们并没有把TestAllRunner.java声明到测试集中,通过修改测试集声明

  1. @SuiteClasses(value={
  2. TestAdd.class, TestReduce.class, TestRide.class, TestAllRunner.class})

我们可以让TestAllRunner.java中的测试也一起运行

转载:http://blog.csdn.net/yezis/article/details/43120867

Junit核心——测试集(TestSuite)的更多相关文章

  1. Junit核心——测试类(TestCase)、测试集(TestSuite)、测试运行器(TestRunner)

    首先,把这三个定义简单的说明一下: 1.测试类(TestCase):一个包含一个或是多个测试的类,在Junit中就是指的是包含那些带有@Test注解的方法的类,同一样也被称作“测试用例”; 2.测试集 ...

  2. JUit——(三)JUnit核心对象(测试、测试类、Suit和Runner)

    JUnit的核心对象:测试.测试类.测试集(Suite).测试运行器 1. 测试: @Test注释的.公共的.不带有任何参数.并且返回void类型的方法 2. 测试类: 公共的,包含对应类的测试方法的 ...

  3. Junit 测试集(打包测试)实例

    测试集,直译过来的意思就是把测试集合起来,再详细一些就是把多个单元测试集合起来 .单元测试可以理解为:单个接口 或者单个类/方法 的测试 项目背景:测试基于spring开发的项目代码 实例模板:pac ...

  4. Junit初级编码(二)探索JUnit核心

    序,Junit测试是单元测试的一个框架,提供了很多方法,供我们快速开展单元测试.现在就让我们慢慢学习Junit单元测试框架 一.Junit的三个核心概念测试类.测试集.测试运行器 1 测试类 公共的, ...

  5. JUnit提供测试框架的优势(JUnit Provides Advantages as a Test Framework)

    测试Java类的内部功能就是刚才你做的那些工作了.真正的测试和刚才的简单例子的主要区别是代码库的大小和复杂度.在处理一大堆代码时,你会需要收集情况报告.但上面的例子遇到第一个错误就停止了,它没有收集尽 ...

  6. python实例编写(6)--引入unittest测试框架,构造测试集批量测试(以微信统一管理平台为例)

    ---恢复内容开始--- 一.python单元测试实例介绍 unittest框架又叫PyUnit框架,是python的单元测试框架. 先介绍一个普通的单元测试(不用unittest框架)的实例: 首先 ...

  7. redis安装、测试&集群的搭建&踩过的坑

    1 redis的安装 1.1   安装redis 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc- ...

  8. unittest之suite测试集(测试套件)

    suite 这个表示测试集,不要放在class内,否则会提示"没有这样的测试方法在类里面 ",我觉得它唯一的好处就是调试的时候可以单独调试某个class而已,我一般不用它,调试时可 ...

  9. robot framework中如何为每个测试用例,测试集准备数据或销毁数据

    Suite Setup:在这个测试集的所有测试用例开始测试之前运行(类似于junit的@BeforeClass) Suite Teardown:在这个测试集的所有测试用例结束之后运行(类似于junit ...

随机推荐

  1. LoadRunner11破解方法

    前期准备:LoadRunner11 下载LoadRunner破解文件 下载LoadRunner注册表清理工具 下载 LoadRunner11破解方法:一.覆盖破解文件首先请下载LoadRunner破解 ...

  2. 论文笔记-RCNN

    CAFFE玩了也有段时间了,现在开始准备研究一下物体检测,现在知道的有RCNN.spp-net.Fast-RCNN和Faster-RCNN,作为菜鸟我还是从头学习,决定先看RCNN,因为有项目要做还要 ...

  3. CodeForces 732E Sockets

    贪心,优先队列. 将$s$按照从小到大的顺序扔进优先队列.从小的开始与电脑配对,如果找不到合适的电脑,那么再变小一次,直到找到与之配对的电脑或者作废. #pragma comment(linker, ...

  4. HDU 6119 2017百度之星初赛B 小小粉丝度度熊 (二分)

    小小粉丝度度熊 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  5. ABP+NetCore+Vue.js实现增删改查

    ABP我就不多介绍了,不知道的可以自己百度 本篇开发工具VS2017,数据库SQL SERVER2012,系统Win7 1.去ABP官网下载对应的模板,下载地址:https://aspnetboile ...

  6. TIANKENG’s restaurant HDU - 4883 (暴力)

    TIANKENG manages a restaurant after graduating from ZCMU, and tens of thousands of customers come to ...

  7. Spring事务传播性

    事务是逻辑处理原子性的保证手段,通过使用事务控制,可以极大的避免出现逻辑处理失败导致的脏数据等问题.事务最重要的两个特性,是事务的传播级别和数据隔离级别.传播级别定义的是事务的控制范围,事务隔离级别定 ...

  8. SqlHelper——只因为在人群中多看了你一眼

    对SQLHelper,还是有一点陌生的,但是大多数人都在使用,我就有一种想了解并使用的意愿,于是查了很多资料,发现一片不错的博客,放在下面,作为自己或读者使用的材料. 一.SqlHelper 出场 不 ...

  9. [HDU1532]Drainage Ditches

    最大流模板题 今天补最大流,先写道模板题,顺便写点对它的理解 最大流问题就是给一个幽香有向图,每一条边有容量,问若从$s$点放水,最多会有多少水流到$t$ 为了解决整个问题,第一步我们当然要找到一条路 ...

  10. 【优先队列】POJ1442-Black Box

    [思路] 建立一个小堆和一个大堆.大堆用来存放第1..index-1大的数,其余数存放在大堆,小堆的堆顶元素便是我们要求出的第index大的数.每次插入一个A(n),必须保证大堆中数字数目不变,故先插 ...