【測試學習筆記】Junit——java單元測試

知識點

  • @test修飾用于測試
  • @test的兩個參數(shù):timeout=毫秒、expect=xxx.class(用于預期異常)
  • @RunWith測試運行器:參數(shù)設置、套件測試

源代碼

public class MyDemo {

    public int add(int a,int b){
        return a+b;
    }
    
    public int minus(int a,int b){
        return a-b;
    }
    
    public int divide(int a,int b){
        return a/b;
    }
}

1、建立測試單元

public class MyDemoTest {
     //對add函數(shù)正常測試   
    @Test
    public void addTest() {
        assertEquals(5, new MyDemo().add(2, 3));
    }
     //@Ignore修飾后,對minus函數(shù)忽略測試  
    @Ignore
    @Test
    public void minusTest() {
        assertEquals(-1, new MyDemo().minus(2, 3));
    }
    //@test中,參數(shù)設置預估異常,如果異常出現(xiàn),則測試通過
    @Test(expected = ArithmeticException.class)
    public void divideExceptionTest() {
        assertEquals(1, new MyDemo().divide(3, 0));
    }

}

2、套件測試(同時測試多個測試單元)

@RunWith(Suite.class)
@Suite.SuiteClasses({MyDemoTest1.class,MyDemoTest2.class})
public class SuitTest {
    /***
#這里不需添加其他函數(shù)
#測試類前用RunWith(Suite.class)修飾
#需要同時測試的測試類放到@Suite.SuiteClasses中

  ***/
}

3、RunWith參數(shù)設置(相當于提前預設很多測試參數(shù))

//類前用@RunWith(Parameterized.class)修飾
//建立集合方法,預設參數(shù)
@RunWith(Parameterized.class)
public class ParameterTest {

    int expected = 0;
    int input1 = 0;
    int input2 = 0;
        
    
    @Parameters
    public static Collection<Object[]> t(){
        return Arrays.asList(new Object[][]{
                {3,1,2},
                {4,2,2}
                
        });
    }
    
    public ParameterTest(int expected,int input1,int input2){
        this.expected = expected;
        this.input1 = input1;
        this.input2 = input2;
        
    }
    
    @Test
    public void add() {
        assertEquals(expected, new MyDemo().add(input1, input2));
    }

}

參考

http://www.imooc.com/learn/356

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,711評論 19 139
  • 注意事項: 測試方法上必須使用@Test修飾 測試方法必須使用public void進行修飾,不能帶任何參數(shù) 新建...
    魯克巴克詩閱讀 1,884評論 0 3
  • 簡介 測試 在軟件開發(fā)中是一個很重要的方面,良好的測試可以在很大程度決定一個應用的命運。軟件測試中,主要有3大種類...
    Whyn閱讀 6,013評論 0 2
  • 原文鏈接:http://www.ruanyifeng.com/blog/2015/12/a-mocha-tutor...
    butterflyq閱讀 2,113評論 1 3
  • 一開始聽到永澄老師的“甜面包熱湯”模式,不明覺厲,感覺高大上。近來,在微信推送中寫到了這個模式,那就應該好好地學習...
    山丘三閱讀 554評論 0 1

友情鏈接更多精彩內容