zoukankan      html  css  js  c++  java
  • Junit核心——测试集(TestSuite)

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

    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. package org.yezi.junit;  
    2.   
    3. public class Calcaute {  
    4.     public int ride(int a, int b){  
    5.         return a * b;  
    6.     }  
    7.       
    8.     public int add(int a, int b){  
    9.         return a + b;  
    10.     }  
    11.       
    12.     public int reduce(int a, int b){  
    13.         return a - b;  
    14.     }  
    15.       
    16. }  
    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. package org.yezi.junit;  
    2.   
    3. import org.junit.Test;  
    4. import static org.junit.Assert.*;  
    5.   
    6. public class TestAdd {  
    7.       
    8.     @Test  
    9.     public void testAdd(){  
    10.         Calcaute calcaute = new Calcaute();  
    11.         int result = calcaute.add(80, 20);  
    12.         assertEquals(100, result);  
    13.     }  
    14.       
    15. }  
    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. package org.yezi.junit;  
    2.   
    3. import org.junit.Test;  
    4.   
    5. import static org.junit.Assert.*;  
    6.   
    7. public class TestReduce {  
    8.       
    9.     @Test  
    10.     public void testReduce(){  
    11.         Calcaute calcaute = new Calcaute();  
    12.         int result = calcaute.reduce(80, 20);  
    13.         assertEquals(60, result);  
    14.     }  
    15.       
    16. }  
    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. package org.yezi.junit;  
    2.   
    3. import org.junit.Test;  
    4. import static org.junit.Assert.*;  
    5.   
    6.   
    7. public class TestRide {  
    8.       
    9.     @Test  
    10.     public void testRide(){  
    11.         Calcaute calcaute = new Calcaute();  
    12.         int result = calcaute.ride(80, 20);  
    13.         assertEquals(1600, result);  
    14.     }  
    15.       
    16. }  
    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. package org.yezi.junit;  
    2.   
    3. import org.junit.Test;  
    4. import org.junit.runner.RunWith;  
    5. import org.junit.runners.Suite;  
    6. import org.junit.runners.Suite.SuiteClasses;  
    7. import static org.junit.Assert.*;  
    8.   
    9. @RunWith(value=Suite.class)  
    10. @SuiteClasses(value={  
    11.         TestAdd.class, TestReduce.class, TestRide.class})  
    12. public class TestAllRunner {  
    13.       
    14.     @Test  
    15.     public void testAdd(){  
    16.         Calcaute calcaute = new Calcaute();  
    17.         int result = calcaute.add(10, 20);  
    18.         assertEquals(20, result);  
    19.     }  
    20.       
    21. }  

    其中,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声明到测试集中,通过修改测试集声明

      在CODE上查看代码片派生到我的代码片

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

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

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

  • 相关阅读:
    javascript事件流讲解和实例应用
    Javascripts事件基础和事件绑定
    javascript-节点属性详解
    js数据类型检测的四种方式
    原生JS的window.onload与Jquery的$(document).ready(function() {}),$(function () {})有什么不同?
    Js字符串方法大全
    什么是原型链?
    new操作符具体干了什么呢
    document.write和innerHTML的区别
    一个页面从输入URL到页面加载显示完成,这个过程中都发生了什么?
  • 原文地址:https://www.cnblogs.com/ceshi2016/p/6434578.html
Copyright © 2011-2022 走看看