junit

 

參考:http://www.javashuo.com/article/p-anejzaeq-ke.htmlhtml

          http://www.javashuo.com/article/p-bppjrrsl-e.htmljava

https://junit.org/junit5/docs/current/user-guide/#overview-what-is-junit-5spring

 

spring 整合單元測試數組

https://jinnianshilongnian.iteye.com/blog/2004660ide

http://www.javashuo.com/article/p-uthsngls-r.html函數

junit 入門 參考:https://www.w3cschool.cn/junit/單元測試

public class ExecutionProcedureJunit  {
    //beforeClass() 方法首先執行,而且只執行一次。
    @BeforeClass
    public static void beforeClass(){
        System.out.println("in before class");
    }
    //afterClass() 方法最後執行,而且只執行一次
    @AfterClass
    public static void afterClass(){
        System.out.println("in after class");
    }
    //after() 方法針對每個測試用例執行,可是是在執行測試用例以後
    @After
    public void after(){
        System.out.println("in after");
    }
    //before() 方法針對每個測試用例執行,可是是在執行測試用例以前。
    @Before
    public void Before(){
        System.out.println("in before");
    }
    //在 before() 方法和 after() 方法之間,執行每個測試用例
    @Test
    public void testCase1(){
        System.out.println("in test case 1");
    }
    //在 before() 方法和 after() 方法之間,執行每個測試用例
    @Test
    public void testCase2(){
        System.out.println("in test case 2");
    }
}

 參數化測試測試

用 @RunWith(Parameterized.class) 來註釋 test 類。
建立一個由 @Parameters 註釋的公共的靜態方法,它返回一個對象的集合(數組)來做爲測試數據集合。
建立一個公共的構造函數,它接受和一行測試數據相等同的東西。
爲每一列測試數據建立一個實例變量。
用實例變量做爲測試數據的來源來建立你的測試用例。ui

package com.test9;
import java.util.Arrays;
import java.util.Collection;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import static org.junit.Assert.*;

@RunWith(Parameterized.class) //用 @RunWith(Parameterized.class) 來註釋 test 類。
public class PrimeNumberCheckerTest {
    private Integer inputNumber;
    private boolean expectedResult;
    private PrimeNumberChecker primeNumberChecker;
    @Before
    public void initialize(){
        primeNumberChecker=new PrimeNumberChecker();
    }
    //建立一個公共的構造函數,它接受和一行測試數據相等同的東西
    public PrimeNumberCheckerTest(Integer inputNumber,boolean expectedResult){
        this.inputNumber=inputNumber;
        this.expectedResult=expectedResult;
    }
    @SuppressWarnings("rawtypes")
    @Parameterized.Parameters //建立一個由 @Parameters 註釋的公共的靜態方法,它返回一個對象的集合(數組)來做爲測試數據集合。
    public static Collection primeNumbers(){
        return Arrays.asList(new Object[][]{
            {2,true},
            {6,false},
            {19,true},
            {22,false},
            {23,true}
        });
    }
    @Test
    public void testPrimeNumberChecker(){
        System.out.println("Parameterized Number is : "+inputNumber);
        assertEquals(expectedResult, primeNumberChecker.validate(inputNumber));
    }    
}
相關文章
相關標籤/搜索