一、 單元測(cè)試的概念
概念:
-
單元測(cè)試(unit testing),是指對(duì)軟件中的最小可測(cè)試單元進(jìn)行檢查和驗(yàn)證。在Java中單元測(cè)試的最小單元是類。
-
單元測(cè)試是開(kāi)發(fā)者編寫(xiě)的一小段代碼,用于檢驗(yàn)被測(cè)代碼的一個(gè)很小的、很明確的功能是否正確。執(zhí)行單元測(cè)試,就是為了證明這段代碼的行為和我們期望是否一致。
單元測(cè)試引用:
眾所周知,通過(guò)spring initialize創(chuàng)建的Spring Boot項(xiàng)目會(huì)在Maven中自動(dòng)攜帶很多starter依賴:
其中包含了一個(gè)名為spring-boot-starter-test的依賴,本文是圍繞這個(gè)依賴展開(kāi)。
Spring Boot 基礎(chǔ)就不介紹了,推薦看這個(gè)免費(fèi)教程:
https://github.com/javastacks/spring-boot-best-practice
Spring Boot中引入單元測(cè)試很簡(jiǎn)單,添加如下依賴(即spring-boot-starter-test依賴):
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
spring-boot-starter-test有如下幾個(gè)庫(kù):
spring-boot-starter-testUML圖:
二、單元測(cè)試的作用
在沒(méi)有接觸單元測(cè)試之前我們是怎么做測(cè)試的?一般有兩個(gè)方法:
在時(shí)間允許的情況下,編寫(xiě)單元測(cè)試是程序員對(duì)代碼的自測(cè),這是對(duì)自己代碼的負(fù)責(zé)。
寫(xiě)單元測(cè)試的兩個(gè)動(dòng)機(jī):
-
保證或驗(yàn)證實(shí)現(xiàn)功能。
-
保護(hù)已經(jīng)實(shí)現(xiàn)的功能不被破壞。
三、Spring Boot引入的MockMvc的概念
什么是Mock?
在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,模擬對(duì)象(英語(yǔ):mock object)是以可控的方式模擬真實(shí)對(duì)象行為的假對(duì)象。在編程過(guò)程中,通常通過(guò)模擬一些輸入數(shù)據(jù),來(lái)驗(yàn)證程序是否達(dá)到預(yù)期結(jié)果。
為什么使用Mock對(duì)象?
使用模擬對(duì)象,可以模擬復(fù)雜的、真實(shí)的對(duì)象行為。如果在單元測(cè)試中無(wú)法使用真實(shí)對(duì)象,可采用模擬對(duì)象進(jìn)行替代。
MockMvc的概念
MockMvc是由spring-test包提供,實(shí)現(xiàn)了對(duì)Http請(qǐng)求的模擬,能夠直接使用網(wǎng)絡(luò)的形式,轉(zhuǎn)換到Controller的調(diào)用,使得測(cè)試速度快、不依賴網(wǎng)絡(luò)環(huán)境。同時(shí)提供了一套驗(yàn)證的工具,結(jié)果的驗(yàn)證十分方便。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-780467.html
接口MockMvcBu文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-780467.html
到了這里,關(guān)于Spring Boot 單元測(cè)試,保姆級(jí)教程!的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!