1. 程式人生 > >初識IntelliJ IDEA下JUnit單元測試

初識IntelliJ IDEA下JUnit單元測試

由於之前進行單元測試時,沒有用JUnit測試框架,逐步接觸到其後,它的功能實在是太強大了。本文主要初步介紹如何在IntelliJ IDEA上簡單使用JUnit。在Android Studio上建立module時,會自動幫助我們建立測試類:

下面也按照此在IntelliJ IDEA上建立測試類,首先在IntelliJ IDEA中安裝外掛JUnit Generator,JUnit已經被預設安裝了,然後再新建module Test,新建資料夾:lib,然後在該資料夾中放入:

junit-4.7.jar  hamcrest-core-1.3.jar(如果不引用hamcrest-core-1.3.jar,可能會報錯)

然後新建一個類people,然後再新建一個放測試類的資料夾(為了和專案程式碼分開),位於src同目錄下,命名為Test:

右擊Test資料夾,Mark  Directory as Test Resources Root,會發現該資料夾顏色變了。

然後開啟people類,滑鼠箭頭放在people類名稱上,shift + Ctrl + t (Windows上的快捷鍵)可以建立people類的測試類:

測試類的包名稱是和被測試類同包名,並且在之前建立的Test資料夾中:

說明:如果使用alt + insert 快捷鍵,JUnit Test ->JUnit4,生成的測試類在src下預設命名的包中:

簡單看下people程式碼:

public class people {
    private int age;
    private String name;
    public people(int age, String name) {
        this.age = age;
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public String getName() {
        return name;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public void setName(String name) {
        this.name = name;
    }
    public static void main(String[] args){
    }
}

peopleTest:

/**
 * Created by diy_os on 2016/11/27.
 */
public class peopleTest {
    static   people people;
    @Before
    public void setUp() throws Exception {
        people = new people(22,"lios");
    }
    @After
    public void tearDown() throws Exception {
        System.out.println(people.getName()+"\n"+people.getAge());
    }
    @Test
    public void getAge() throws Exception {
    }
    @Test
    public void getName() throws Exception {
        people.setName("diy_os");
    }
    @Test
    public void setAge() throws Exception {
        people.setAge(21);
    }
    @Test
    public void setName() throws Exception {
        people p = new people(22,"lios");
        p.setName("diy_os");
        System.out.println(p.getName());
    }
    @Test
    public void main() throws Exception {
    }
}

簡單的說明下上的註解:

@Test:每一個測試單元,一定要加上@Test註解

@Before:在測試單元執行前執行,通常用來初始化資料,上面例子用來初始化people

@After:在測試單元執行後執行,用來輸出結果等

看下結果:

更多文章請關注微信公眾號: