偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

測(cè)試員進(jìn)階技能:如何有效地利用單元測(cè)試報(bào)告?

開(kāi)發(fā) 測(cè)試
編寫單元測(cè)試可以幫助測(cè)試人員更好地理解代碼細(xì)節(jié)、提高代碼開(kāi)發(fā)能力,也能幫助開(kāi)發(fā)人員提前辨識(shí)代碼中可能存在的bug,提高代碼的容錯(cuò)能力。

為什么需要單元測(cè)試?

從產(chǎn)品角度而言,常規(guī)的功能測(cè)試、系統(tǒng)測(cè)試都是站在產(chǎn)品局部或全局功能進(jìn)行測(cè)試,能夠很好地與用戶的需要相結(jié)合,但是缺乏了對(duì)產(chǎn)品研發(fā)細(xì)節(jié)(特別是代碼細(xì)節(jié)的理解)。

從測(cè)試人員角度而言,功能測(cè)試和系統(tǒng)測(cè)試以及其他性能測(cè)試等等對(duì)測(cè)試人員的全局特性理解能力要求較高,只要測(cè)試人員能夠掌握一兩種自動(dòng)化測(cè)試框架基本能夠開(kāi)展功能、性能自動(dòng)化測(cè)試,但是借助于測(cè)試框架進(jìn)行研發(fā)降低了測(cè)試人員對(duì)代碼的掌握、理解要求。

從開(kāi)發(fā)人員角度而言,用戶需求往往并不是具體的、全面的,因此基于用戶需求轉(zhuǎn)換成開(kāi)發(fā)文檔或著針對(duì)某個(gè)功能編寫開(kāi)發(fā)代碼往往也存在著局限性(也即我們常說(shuō)的bug)。

因此,編寫單元測(cè)試可以幫助測(cè)試人員更好地理解代碼細(xì)節(jié)、提高代碼開(kāi)發(fā)能力,也能幫助開(kāi)發(fā)人員提前辨識(shí)代碼中可能存在的bug,提高代碼的容錯(cuò)能力。

如何制定單元測(cè)試報(bào)告

良好的單元測(cè)試報(bào)告能夠幫助測(cè)試人員更好地分析、挖掘潛藏的問(wèn)題。那么,如何制定單元測(cè)試報(bào)告呢,從哪些維度出發(fā)呢?在這里我們主要從測(cè)試人員角度出發(fā)來(lái)思考這個(gè)問(wèn)題。

  • 首先,我們需要報(bào)告中能夠呈現(xiàn)我們的測(cè)試用例數(shù)量和測(cè)試結(jié)果(pass或者fail),以及錯(cuò)誤細(xì)節(jié)。
  • 其次,從單元測(cè)試本身特點(diǎn)出發(fā),我們需要報(bào)告中能夠呈現(xiàn)出針對(duì)單元代碼分支、單元方法等的覆蓋率,更好地幫助我們梳理和測(cè)試用例設(shè)計(jì)的優(yōu)良。

在此,我們使用surefire-report統(tǒng)計(jì)測(cè)試用例數(shù)量和測(cè)試結(jié)果,使用jacoco統(tǒng)計(jì)單元測(cè)覆蓋率(注:本文默認(rèn)測(cè)試用例的執(zhí)行方式是mvn test)。

如何配置 surefire-report 和 jacoco ·surefire-report 配置

配置方法:配置 maven-surefire-plugin 插件,maven-surefire-plugin 是 maven 默認(rèn)的 test

執(zhí)行器,配置方法如下圖所示:

上圖中 testFailureIgnore 表示忽略單元測(cè)試中的錯(cuò)誤繼續(xù)構(gòu)建,<include>**/*Test.java</include> :表示任何子目錄下所有命名以 Test 結(jié)尾的 Java 類,<exclude> **/Test*.java </exclude> :表示不執(zhí)行任何子目錄下所有命名以 Test 開(kāi)頭的Java 類。

執(zhí)行方法:使用 mvn test surefire-report:report 即可,會(huì)生成在/target/site/surefire-report.html 測(cè)試報(bào)告文檔。如下圖所示:Tests 顯示總用例數(shù);Errors 指的是程序沒(méi)有考慮到的情況,例如異常未能捕捉;Failure 指的是預(yù)期的結(jié)果與實(shí)際運(yùn)行單元的結(jié)果不同所導(dǎo)致,常出現(xiàn)在斷言處;Skipped 表示跳過(guò)的測(cè)試用例數(shù);Success Rate表示用例成功率(=成功用例數(shù)/總用例數(shù));Time 顯示總耗時(shí)。Package List 顯示詳細(xì)的package 下用例執(zhí)行結(jié)果。

·jacoco 配置

配置方法:配置 jacoco-maven-plugin 插件,配置方法如下圖所示,phase 表示插件運(yùn)行的生命周期階段。

執(zhí)行方法:mvn test 執(zhí)行即可。會(huì)在/target/site/jacoco/目錄下生成總的覆蓋率報(bào)告index.html 和不同 package 的單元測(cè)試覆蓋率報(bào)告../xxx/index.html。此外還有 csv 和 xml格式的單元測(cè)試覆蓋率報(bào)告。

如上圖所示為某個(gè) package 的單元測(cè)試覆蓋率報(bào)告。紅色進(jìn)度條表未覆蓋,綠色進(jìn)度條表示已覆蓋,Cov 為總體覆蓋率。missed Instructions 表示代碼覆蓋率,Missed Branches表示邏輯分支覆蓋率,Missed Cxty 表示判斷執(zhí)行數(shù),missed Lines 表示代碼行數(shù),Methods表示方法個(gè)數(shù)。

責(zé)任編輯:趙寧寧 來(lái)源: 今日頭條
相關(guān)推薦

2022-08-26 08:53:46

單元測(cè)試校驗(yàn)框架

2017-01-14 23:42:49

單元測(cè)試框架軟件測(cè)試

2011-05-16 16:41:06

軟件測(cè)試單元測(cè)試

2024-04-11 09:30:00

大數(shù)據(jù)物聯(lián)網(wǎng)樓宇自控

2020-03-27 09:29:03

閃存存儲(chǔ)分解

2020-04-24 14:00:21

NVMeTCP存儲(chǔ)

2020-08-18 08:10:02

單元測(cè)試Java

2011-04-18 13:20:40

單元測(cè)試軟件測(cè)試

2020-09-30 08:08:15

單元測(cè)試應(yīng)用

2012-09-28 15:06:43

2017-01-16 12:12:29

單元測(cè)試JUnit

2017-01-14 23:26:17

單元測(cè)試JUnit測(cè)試

2011-11-02 09:54:37

測(cè)試

2021-03-28 23:03:50

Python程序員編碼

2011-05-16 16:52:09

單元測(cè)試徹底測(cè)試

2017-03-23 16:02:10

Mock技術(shù)單元測(cè)試

2022-03-15 11:55:24

前端單元測(cè)試

2021-05-05 11:38:40

TestNGPowerMock單元測(cè)試

2011-07-04 18:16:42

單元測(cè)試

2020-05-07 17:30:49

開(kāi)發(fā)iOS技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)