关于测试集,实质就是包含若干个测试类的集合,通过一个具体的实例,让我们来了解一下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. 四十六 常用内建模块 itertools

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: >>> import itertools ...

  2. 114. Flatten Binary Tree to Linked List【Medium】【将给定的二叉树转化为“只有右孩子节点”的链表(树)】

    Given a binary tree, flatten it to a linked list in-place. For example, given the following tree: 1 ...

  3. 7/31 CSU-ACM2018暑期训练7-贪心

    比赛链接 A-CSU - 1588 现在有n堆果子,第i堆有ai个果子.现在要把这些果子合并成一堆,每次合并的代价是两堆果子的总果子数.求合并所有果子的最小代价. Input 第一行包含一个整数T(T ...

  4. Class文件格式

    本文系<深入理解Java虚拟机>总结 ClassFile{ u4 magic; u2 minor_version; u2 major_version; u2 constant_pool_c ...

  5. canvas元素内容生成图片

    转自https://segmentfault.com/a/1190000003853394 想要将canvas元素当前显示的内容生成为图像文件,我们首先要获取canvas中的数据,在HTML5 < ...

  6. luogu P1002 过河卒

    题目描述 棋盘上A点有一个过河卒,需要走到目标B点.卒行走的规则:可以向下.或者向右.同时在棋盘上C点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点.因此称之为“马拦过河卒”. ...

  7. Luogu P3362 Cool loves shaxian 生成函数

    题意: 定义f(i)=∑ k∣i k^d(i≤n),给出q个询问,每个询问询问区间[l,r]的f(i)的和. n<=1e7 d<=1e18 q<=5e4 可以发现f(i)是个积性函数 ...

  8. java面试笔试总结(一)--亲生经历的面试题

    说明:本文只是自己的一些心得体会,答案也是自己写的,正确与否,还需考证 java笔试题    1java笔试题1 启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5, 然后是线程2打印6,7 ...

  9. mysq-binlog

    Auth: JinDate: 2014-04-23参考: http://dev.mysql.com/doc/refman/5.1/en/replication-options-binary-log.h ...

  10. MYSQL复习笔记13-触发器trigger

    Date: 20140305Auth: Jin 一.概念1.基本概念触发器是一个被指定关联到一个表的数据对象,触发器是不需要调用的,当对一个表的特别事件出现时,它就被激活.触发器的代码也是由SQL语句 ...