Junit测试实例1

来源:互联网 发布:淘宝被买家投诉售假 编辑:程序博客网 时间:2024/05/16 20:29
Junit测试格言两则:
1)keep the bar green to keep the code clean!!!
2)单元测试不是证明您是对的,而是证明您没有错误!!!
 
被测试类代码
package com.zyg.test.junit3;
  1. 测试类代码
    1. package com.zyg.test.junit3;
    2. import junit.framework.Assert;
    3. import junit.framework.TestCase;
    4. /**
    5.  * junit3.8中测试类必须继承Test父类
    6.  * @author zyg
    7.  */
    8. public class CalculatorTest extends TestCase{
    9.     /**
    10.      * junit3.8中测试方法需要满足以下原则
    11.      * 1.public 
    12.      * 2.void
    13.      * 3.无方法参数
    14.      * 4.方法名称必须以test开头
    15.      */
    16.     public void testAdd(){
    17.         Calculator cal = new Calculator();
    18.         int result  = cal.add(12);
    19.         
    20.         //断言 
    21.         Assert.assertEquals(3,result);
    22.     }
    23.     
    24.     public void testMinus(){
    25.         Calculator cal = new Calculator();
    26.         int result = cal.minus(12);
    27.         Assert.assertEquals(-1, result);
    28.     }
    29.     
    30.     public void testMultiply(){
    31.         Calculator cal = new Calculator();
    32.         int result = cal.multiply(23);
    33.         
    34.         //断言 
    35.         Assert.assertEquals(6, result);
    36.     }
    37.     
    38.     public void testDivide(){
    39.         Calculator cal = new Calculator();
    40.         int result = 0;
    41.         try {
    42.             result = cal.divide(64);
    43.         } catch (Exception e) {
    44.             e.printStackTrace();
    45.             Assert.fail();
    46.         }
    47.         
    48.         //断言 
    49.         Assert.assertEquals(1,result);
    50.     }
    51.     
    52.     public void testDivide2(){
    53.         Throwable tx = null;
    54.         try{
    55.             Calculator cal = new Calculator();
    56.             cal.divide(40);
    57.             
    58.             Assert.fail();
    59.         }catch(Exception ex){
    60.             tx = ex;
    61.         }
    62.         System.out.println(tx.getMessage());
    63.         Assert.assertNotNull(tx);
    64.         Assert.assertEquals(Exception.class, tx.getClass());
    65.         Assert.assertEquals("除数不能为零!!",tx.getMessage());
    66.     }
    67. }
  2. /**
  3.  * 数学计算
  4.  * 
  5.  * @author zyg
  6.  * 
  7.  */
  8. public class Calculator {
  9.     public int add(int a, int b) {
  10.         return a + b;
  11.     }
  12.     public int minus(int a, int b) {
  13.         return a - b;
  14.     }
  15.     public int multiply(int a, int b) {
  16.         return a * b;
  17.     }
  18.     public int divide(int a, int b) throws Exception{
  19.         if(0 == b){
  20.             throw new Exception("除数不能为零!!");
  21.         }
  22.         return a / b;
  23.     }
  24. }
原创粉丝点击