溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

發(fā)布時(shí)間:2021-09-24 16:11:10 來(lái)源:億速云 閱讀:439 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

SpringBootTest單元測(cè)試報(bào)錯(cuò)

@RunWith(SpringRunner.class)
@SpringBootTest(classes = { DataRulesApplication.class })
@EnableAutoConfiguration
//@SpringBootTest(classes = { DataRulesApplication.class })
public class HuaboAddressTest extends AbstractTestNGSpringContextTests {  
    @Autowired
    private HuaboAddressServiceImpl johnyService;
 
    @Test
    public void queryState() {
        //johnyService.resetAllDistricts();
        long startTime = System.currentTimeMillis();
        //    johnyService.resetAllDistricts();
        //  johnyService.batchUpdate2();
        //  johnyService.batchupdate3();
        //johnyService.resetAllDistricts();
        johnyService.updateBatch();
        long endTime = System.currentTimeMillis();
        System.out.println("執(zhí)行時(shí)間:" + (endTime - startTime));
 
//        long startTime = System.currentTimeMillis();
//        johnyService.select1();
//        long endTime = System.currentTimeMillis();
//        System.err.println("執(zhí)行時(shí)間1:"+(endTime-startTime));
//        startTime = System.currentTimeMillis();
//        johnyService.select2();
//        endTime = System.currentTimeMillis();
//        System.err.println("執(zhí)行時(shí)間2:"+(endTime-startTime));
    }
 
    @Test
    public void check() {  
    }
 
    @Test
    public void register() {
    }
 
    @Test
    public void detail() {
    }
 
    @Test
    public void queryCategory() { 
    }  
}

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

其實(shí)只需要在setting中設(shè)置運(yùn)行test的環(huán)境即可。

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

單元測(cè)試 @mock和@SpringBootTest使用

在寫(xiě)單元測(cè)試的過(guò)程中我們會(huì)發(fā)現(xiàn)需要測(cè)試的類(lèi)有很多依賴(lài),這些依賴(lài)的類(lèi)或者資源又會(huì)有依賴(lài),導(dǎo)致在單元測(cè)試代碼里無(wú)法完成構(gòu)建,我們應(yīng)對(duì)的方法是Mock。簡(jiǎn)單的說(shuō)就是模擬這些需要構(gòu)建的類(lèi)或者資源,提供給需要測(cè)試的對(duì)象使用。

一.單元測(cè)試工具mock使用

1.引入依賴(lài)包

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

2.mock測(cè)試類(lèi)

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

二.springboot使用@SpringBootTest單元測(cè)試

1.引入依賴(lài)包

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

2.測(cè)試類(lèi)

如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題

三.mock和@springBootTest區(qū)別

1.mock進(jìn)行單元測(cè)試不依賴(lài)spring的bean定義文件,不需要啟動(dòng)web服務(wù),執(zhí)行起來(lái)速度很快。

2.@springBootTest需要啟動(dòng)服務(wù),執(zhí)行真正的操作,執(zhí)行速度慢,當(dāng)需要真正的dao層操作時(shí)可選此測(cè)試方式。

看完上述內(nèi)容,你們掌握如何解決SpringBootTest單元測(cè)試報(bào)錯(cuò)的問(wèn)題的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI