中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

深圳網(wǎng)站建設(shè)代理商哪家網(wǎng)絡(luò)推廣好

深圳網(wǎng)站建設(shè)代理商,哪家網(wǎng)絡(luò)推廣好,萊蕪都市網(wǎng)app,青島哪里有做網(wǎng)站的Hi I’m Shendi 為什么使用Junit單元測試?Junit的詳解 Junit簡介 Junit是一個(gè)Java語言的單元測試框架。 單元測試是一個(gè)對(duì)單一實(shí)體(類或方法)的測試 JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個(gè)回歸測試框架(regression test…

Hi I’m Shendi


為什么使用Junit單元測試?Junit的詳解



Junit簡介

Junit是一個(gè)Java語言的單元測試框架。

單元測試是一個(gè)對(duì)單一實(shí)體(類或方法)的測試

JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個(gè)回歸測試框架(regression testing framework)。Junit測試是程序員測試,即所謂白盒測試,因?yàn)槌绦騿T知道被測試的軟件如何(How)完成功能和完成什么樣(What)的功能。



為什么要用Junit?

在我剛接觸到Junit時(shí)有這樣一個(gè)問題,進(jìn)行測試的話可以使用main函數(shù),那為什么要使用junit?

找不到答案,于是后面的開發(fā)我都沒有使用到單元測試,但用的人還是非常多的,于是今天準(zhǔn)備深入了解一下


總結(jié),有以下幾點(diǎn)

  • 比main代碼少一點(diǎn)
  • 斷言測試預(yù)期結(jié)果
  • 可單個(gè)多個(gè)運(yùn)行,多個(gè)共享數(shù)據(jù)
  • 有很多注解,可以在之前…之后運(yùn)行

主要是比較規(guī)范和方便吧,main寫完測試完后基本上都直接刪掉了,而這個(gè)不用



使用


Maven的引入就不列出了(SpringBoot都自帶導(dǎo)入),這里列出Eclipse直接配置Junit

Eclipse內(nèi)點(diǎn)擊項(xiàng)目,按Alt+Enter(或右鍵Properties),選擇 Java Build Path,選擇Libraries,選擇Classpath,點(diǎn)擊Add Library

在這里插入圖片描述


Next

在這里插入圖片描述

Finish即可


接下來就可以非常簡單的進(jìn)行單元測試了


在想要運(yùn)行的函數(shù)上加上 @Test 注解,鼠標(biāo)點(diǎn)擊函數(shù)名,右鍵 RunAs - Junit Test 即可運(yùn)行

在這里插入圖片描述


運(yùn)行后會(huì)在Junit選項(xiàng)卡中顯示結(jié)果

在這里插入圖片描述


綠勾代表運(yùn)行正常,這一次將三個(gè)函數(shù)都直接運(yùn)行了


運(yùn)行單個(gè)函數(shù)

如果需要運(yùn)行單個(gè)函數(shù)可以用鼠標(biāo)點(diǎn)擊函數(shù)名,當(dāng)輸入的光標(biāo)在函數(shù)名上時(shí)右鍵運(yùn)行即可

如果不行的話可以打開 outline 選項(xiàng)卡,window -> Show Views -> Outline

在這里插入圖片描述

右側(cè)選中需要運(yùn)行的函數(shù),右鍵運(yùn)行即可



Assert類

用來斷言測試,基本上都是靜態(tài)函數(shù)

例如有一個(gè)函數(shù)用來處理xxx,我們知道函數(shù)返回1是正確結(jié)果,于是可以這樣寫

在這里插入圖片描述

上面預(yù)期和實(shí)際不符,條條是紅色的,且 Failure Trace 下面顯示了錯(cuò)誤信息和行數(shù)


assert就是一個(gè)if的封裝,一般使用,可能有問題用if,不應(yīng)該有問題的時(shí)候用assert


Assert還有很多函數(shù),例如判斷是否為true或者false,下面列出一些

  • fail([String])
    • 代表失敗,可以有一參數(shù)為錯(cuò)誤信息
  • assertSame([String],Object expected,Object actual)
    • 對(duì)象的內(nèi)存地址是預(yù)期的內(nèi)存地址
  • assertNotSame
    • 與assertSame相反
  • assertEquals([String],Object expected,Object actual)
    • 值是預(yù)期值
  • assertNotEquals
    • 與assertEquals相反


注解

除了 @Test 注解之外,還有一些其他的注解,如下

注解描述
@Ignore被忽略的測試方法,加上之后,不執(zhí)行此段代碼,與其他注解一起使用
@Before在每一個(gè)標(biāo)注了 @Test 的函數(shù)執(zhí)行之前執(zhí)行,(有一個(gè)@Test就執(zhí)行一次)
@After在每一個(gè)標(biāo)注了 @Test 的函數(shù)執(zhí)行之后執(zhí)行,(有一個(gè)@Test就執(zhí)行一次)
@BeforeClass必須是靜態(tài)函數(shù),所有測試函數(shù)執(zhí)行之前執(zhí)行(包括Before),只執(zhí)行一次
@AfterClass必須是靜態(tài)函數(shù),所有測試函數(shù)執(zhí)行之后執(zhí)行(包括After),只執(zhí)行一次


SpringBoot整合Junit

新建SpringBoot項(xiàng)目時(shí)會(huì)自帶Junit,也可以手動(dòng)加入依賴

<!-- springboot的測試框架,里面有對(duì)junit4的依賴 -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>

項(xiàng)目會(huì)有 src/test/java 文件夾供存放測試文件


在測試類上加上以下注解

  • @RunWith(SpringRunner.class)
  • @SpringBootTest

import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class)
@SpringBootTest
class DemoApplicationTests {@Autowired DemoControl dc;@Testpublic void test() {System.out.println(dc.test());}}

@RestController
public class DemoControl {public String test() {return "test";}}

單元測試運(yùn)行即可看到結(jié)果

在這里插入圖片描述


單元測試對(duì)事務(wù)的影響

如果在使用了@Transactional注解,那么在單元測試中的事務(wù)默認(rèn)回滾。需要在方法上添加 @Rollback(value=false) 才會(huì)提交事務(wù)。

在測試中,處于對(duì)數(shù)據(jù)庫的保護(hù)考慮,請使用@Rollback(value=true) 顯式的回滾




END

http://www.risenshineclean.com/news/34985.html

相關(guān)文章:

  • 外貿(mào)購物網(wǎng)站短視頻如何引流與推廣
  • 做視頻網(wǎng)站怎么掙錢有沒有免費(fèi)的推廣網(wǎng)站
  • 晉江網(wǎng)站建設(shè)公司網(wǎng)絡(luò)營銷推廣方案怎么寫
  • wordpress分詞seo項(xiàng)目培訓(xùn)
  • 百度競價(jià)點(diǎn)擊軟件網(wǎng)站seo整站優(yōu)化
  • 微信輔助網(wǎng)站制作論壇排名
  • 免費(fèi)的logo設(shè)計(jì)網(wǎng)站推廣運(yùn)營怎么做
  • 微網(wǎng)站開發(fā)北京關(guān)鍵詞優(yōu)化一年的收費(fèi)標(biāo)準(zhǔn)
  • 東莞網(wǎng)站開發(fā)站長之家網(wǎng)站排行榜
  • 濰坊網(wǎng)站建設(shè)(首選聚搜網(wǎng)絡(luò))cps推廣平臺(tái)有哪些
  • wordpress cdn圖片加速常用的seo查詢工具
  • 網(wǎng)站視頻建設(shè)常德論壇網(wǎng)站
  • 購物網(wǎng)站最重要的功能專業(yè)網(wǎng)頁設(shè)計(jì)和網(wǎng)站制作公司
  • 網(wǎng)站查詢域名訪問網(wǎng)絡(luò)營銷渠道建設(shè)方案
  • 公司的網(wǎng)站建設(shè)一般需要多少費(fèi)用sem優(yōu)化怎么做
  • 中英文網(wǎng)站asp怎么做seo推廣軟件費(fèi)用
  • 找人做網(wǎng)站應(yīng)該注意什么福州seo兼職
  • 打開鏈接的網(wǎng)站網(wǎng)絡(luò)營銷計(jì)劃的七個(gè)步驟
  • 自制網(wǎng)站的動(dòng)態(tài)圖怎么做創(chuàng)意廣告
  • 廣州中小企業(yè)網(wǎng)站建設(shè)免費(fèi)發(fā)帖推廣的平臺(tái)
  • 深圳外文網(wǎng)站制作喬拓云智能建站官網(wǎng)
  • 福州企業(yè)網(wǎng)站推廣網(wǎng)絡(luò)營銷推廣方式
  • 馬鞍山制作網(wǎng)站網(wǎng)絡(luò)營銷方式有哪幾種
  • 學(xué)校網(wǎng)站制作2345網(wǎng)址導(dǎo)航大全
  • 做二手房的網(wǎng)站技巧網(wǎng)站做成app
  • 網(wǎng)站設(shè)計(jì)價(jià)格大概多少谷歌瀏覽器下載手機(jī)版
  • 做網(wǎng)站優(yōu)化給業(yè)務(wù)員提成百度資源提交
  • wordpress+admin主題武漢seo招聘信息
  • 揚(yáng)中網(wǎng)站建設(shè) 優(yōu)幫云站長工具seo查詢5g5g
  • 珠海網(wǎng)站建設(shè)科速互聯(lián)百度知道網(wǎng)頁版進(jìn)入