最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Java單元測(cè)試之Junit框架使用教程

 更新時(shí)間:2022年05月26日 09:01:06   作者:遇安.112  
單元測(cè)試就是針對(duì)最小的功能單元編寫測(cè)試代碼,Junit是使用Java語(yǔ)言實(shí)現(xiàn)的單元測(cè)試框架,它是開源的,Java開發(fā)者都應(yīng)當(dāng)學(xué)習(xí)并使用Junit編寫單元測(cè)試。本文就來講講Junit框架的使用教程,需要的可以參考一下

單元測(cè)試

單元測(cè)試就是針對(duì)最小的功能單元編寫測(cè)試代碼,Java程序最小的功能單元是方法,因此,單元測(cè)試就是針對(duì)Java方法的測(cè)試,進(jìn)而檢查方法的正確性

目前測(cè)試方法是怎么進(jìn)行的,存在什么問題?

1、只有一個(gè)main方法,如果一個(gè)方法的測(cè)試失敗了,其他方法測(cè)試會(huì)受到影響

2、無法得到測(cè)試的結(jié)果報(bào)告,需要程序員自己去觀察測(cè)試是否成功

3、無法實(shí)現(xiàn)自動(dòng)化測(cè)試

Junit單元測(cè)試框架

1、Junit是使用Java語(yǔ)言實(shí)現(xiàn)的單元測(cè)試框架,它是開源的,Java開發(fā)者都應(yīng)當(dāng)學(xué)習(xí)并使用Junit編寫單元測(cè)試

2、此外,幾乎所有的IDE工具都集成了Junit,這樣我們就可以直接在IDE中編寫并運(yùn)行Junit測(cè)試,Junit目前最新版本是5

Junit優(yōu)點(diǎn)

1、Junit可以靈活的選擇執(zhí)行哪些測(cè)試方法,可以一鍵執(zhí)行全部測(cè)試方法

2、Junit可以生成全部方法的測(cè)試報(bào)告

3、Junit可以生成測(cè)試報(bào)告,如果測(cè)試良好則是綠色,如果測(cè)試失敗則是紅色

4、單元測(cè)試中的某個(gè)方法測(cè)試失敗了,不會(huì)影響其他測(cè)試方法的測(cè)試

Junit單元測(cè)試是做什么的?

測(cè)試類中的方法的正確性的

單元測(cè)試快速入門

需求:使用單元測(cè)試進(jìn)行業(yè)務(wù)方法預(yù)期結(jié)果、正確性測(cè)試的快速入門

分析:

1、將Junit的jar包導(dǎo)入到項(xiàng)目中

IDEA通常整合好了Junit框架,一般不需要導(dǎo)入

如果IDEA沒有整合好,需要自己手工導(dǎo)入兩個(gè)Junit的jar包到模塊

2、編寫測(cè)試方法:該測(cè)試方法必須是公共的無參數(shù)無返回值的非靜態(tài)方法

3、在測(cè)試方法上使用@Test注解:標(biāo)注該方法是一個(gè)測(cè)試方法

4、在測(cè)試方法中完成被測(cè)試方法的預(yù)期正確性測(cè)試

5、選中測(cè)試方法,選擇Junit運(yùn)行,如果測(cè)試良好則是綠色,如果測(cè)試失敗,則是紅色

業(yè)務(wù)類

//業(yè)務(wù)方法
public class 單元測(cè)試_Junit框架 {
    public String loginName(String loginName,String passWord){
        if("YAn".equals(loginName)&&"123456".equals(passWord)){
            return "登錄成功";
        }else{
            return "登錄失敗,密碼或者用戶名錯(cuò)誤";
        }
    }
    public void selectName(){
        //這里我們故意寫一個(gè)bug,方便測(cè)試
        System.out.println(10/0);
        System.out.println("查詢成功!");
    }
}

測(cè)試方法

import org.junit.Assert;
import org.junit.Test;
 
//測(cè)試方法
public class 單元測(cè)試_Junit框架text {
    /*
    測(cè)試方法注意點(diǎn):
    1、必須是公開的、無參、無返回值的方法
    2、測(cè)試方法必須使用@Test注解標(biāo)記
     */
    @Test
    public void test(){
        單元測(cè)試_Junit框架 t=new 單元測(cè)試_Junit框架();
        String ts=t.loginName("YAn","123456");
 
        //進(jìn)行預(yù)期結(jié)果的正確性測(cè)試:斷言
        Assert.assertEquals("您的業(yè)務(wù)功能可能出現(xiàn)了問題","登錄成功",ts);
    }
    @Test
    public void selectName(){
        單元測(cè)試_Junit框架 ts=new 單元測(cè)試_Junit框架();
        ts.selectName();
    }
}

兩個(gè)測(cè)試方法運(yùn)行后結(jié)果:

如果您的項(xiàng)目被人動(dòng)了,和你的預(yù)期結(jié)果不一樣,則是這樣的:

單元測(cè)試常用注解(博主這里用的是版本4):

業(yè)務(wù)類修改一點(diǎn)點(diǎn),讓測(cè)試方法都沒有bug

//業(yè)務(wù)方法
public class 單元測(cè)試_Junit框架 {
    public String loginName(String loginName,String passWord){
        if("YAn".equals(loginName)&&"123456".equals(passWord)){
            return "登錄成功";
        }else{
            return "登錄失敗,密碼或者用戶名錯(cuò)誤";
        }
    }
    public void selectName(){
        System.out.println(10/2);
        System.out.println("查詢成功!");
    }
}

測(cè)試方法

import org.junit.*;
 
//測(cè)試方法
public class 單元測(cè)試_Junit框架text {
//修飾實(shí)例方法的
    @Before
    public void Before(){
        System.out.println("Before方法運(yùn)行");
    }
    @After
    public void After(){
        System.out.println("After方法運(yùn)行");
    }
    //修飾靜態(tài)方法的
    @BeforeClass
    public static void BeforeClass(){
        System.out.println("BeforeClass方法運(yùn)行");
    }
    @AfterClass
    public static void AfterClass(){
        System.out.println("AfterClass方法運(yùn)行");
    }
    /*
    測(cè)試方法注意點(diǎn):
    1、必須是公開的、無參、無返回值的方法
    2、測(cè)試方法必須使用@Test注解標(biāo)記
     */
    @Test
    public void test(){
        單元測(cè)試_Junit框架 t=new 單元測(cè)試_Junit框架();
        String ts=t.loginName("YAn","123456");
 
        //進(jìn)行預(yù)期結(jié)果的正確性測(cè)試:斷言
        Assert.assertEquals("您的業(yè)務(wù)功能可能出現(xiàn)了問題","登錄成功",ts);
    }
    @Test
    public void selectName(){
        單元測(cè)試_Junit框架 ts=new 單元測(cè)試_Junit框架();
        ts.selectName();
    }
}

運(yùn)行結(jié)果:

可以看出最先運(yùn)行的是BeforeClass測(cè)試方法,最后結(jié)束的是AfterClass測(cè)試方法。

先執(zhí)行Before方法,然后運(yùn)行里面的測(cè)試內(nèi)容,再運(yùn)行After方法。

開始執(zhí)行的方法:初始化資源

執(zhí)行完之后的方法:釋放資源

以上就是詳解Java單元測(cè)試之Junit框架使用教程的詳細(xì)內(nèi)容,更多關(guān)于Java Junit框架的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

萨嘎县| 曲沃县| 来安县| 得荣县| 陇西县| 平阳县| 集安市| 合水县| 凭祥市| 保亭| 镇平县| 汶川县| 郁南县| 青阳县| 广平县| 潼南县| 宣汉县| 张家港市| 苏州市| 阜南县| 都兰县| 永平县| 无为县| 德钦县| 兴城市| 兴仁县| 鹤岗市| 盐边县| 晋州市| 定南县| 江安县| 临猗县| 明光市| 台山市| 黔西| 明溪县| 黄冈市| 敦化市| 南漳县| 双鸭山市| 襄樊市|