久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

IDEA 單元測試覆蓋技巧分享

瀏覽:8日期:2024-07-30 16:08:26
1.前言

通常情況下,項目經理or項目總監會分階段的問測試負責人,本階段的測試覆蓋率是多少?在工作中,當被問到“如何提高代碼質量”,回答無非如下幾個,增加評審,代碼規約,單元測試。不知起自何年何月,如今一些機構開始引入“單元測試覆蓋率”的概念,并由此對程序員提出了覆蓋率要達到70%,90%,以此來評判程序員工作的質量,以及產品的質量。這里先預為單元測試下定義以免混淆,即,基于Junit,類與代碼級別的,與運行時無關的白盒測試。

2.我的理解

測試覆蓋率應該區分自動化測試覆蓋率和功能測試用例覆蓋率。

對于自動化測試覆蓋率,應是=(自動化測試腳本執行過的代碼/總代碼)

對于測試用例覆蓋率,應是=(測試用例覆蓋的功能點/產品設計的所有功能點)

3.什么是單元測試

單元測試是開發者編寫的一小段代碼,用于檢驗被測代碼的一個很小的、很明確的功能是否正確,通常而言,一個單元測試是用于判斷某個特定條件(或者場景)下某個特定函數的行為。

3.1好處

1,單元測試不但會使你的工作完成得更輕松。而且會令你的設計會變得更好,甚至大大減少你花在調試上面的時間

2,提高代碼質量

3,減少bug,快速定位bug

4,放心地修改、重構

5,顯得專業(玩笑話)

3.2注意

1,不能只測試一條正確執行路徑,要考慮到所有可能的情況

2,要確保所有測試都能夠通過,避免間接損害

3,如果一個函數復雜到無法單測,那就說明模塊的抽象有問題

(1)語句覆蓋法

(2)分支覆蓋法

(3)條件覆蓋法

(4)組合條件覆蓋法

4.IDEA 單元測試覆蓋技巧

package com.example.demoo.junit;/** * Created by lanxinghua on 2018/7/26. */public class Myclass { public String test1(){ return 'test1!'; } public String test2(){ return 'test2'; }}

package com.example.demoo;import com.example.demoo.junit.Myclass;import org.junit.Before;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;@SpringBootTestpublic class JunitTest { private Myclass myclass; @Before public void setUp() { myclass = new Myclass(); } @Test public void testHello(){ myclass.test1(); }}

1)啟動單元測試覆蓋模式(Run “*” with Coverage)

IDEA 單元測試覆蓋技巧分享

2)查看代碼覆蓋率結果

IDEA 單元測試覆蓋技巧分享

工具欄按鈕:

IDEA 單元測試覆蓋技巧分享

3)生成代碼覆蓋率報告

IDEA 單元測試覆蓋技巧分享

在里面 生成覆蓋報告對話框打開,指定存儲生成的報告的目標目錄,并且可選擇選中該復選框在瀏覽器中打開生成的HTML。

IDEA 單元測試覆蓋技巧分享

IDEA 單元測試覆蓋技巧分享

擴展

隨著公司的發展,自動化測試腳本的持續集成逐漸要被做起來,那就面臨一個自檢的問題,我的測試腳本、測試用例是否全覆蓋了開發的代碼。如何直觀地看到代碼覆蓋率?

本地統計代碼覆蓋率:jacoco,cobertura

遠程統計代碼覆蓋率:jenkins上下載jacoco插件,并在構建后配置

如果把測試工程(T)跟開發工程(D)分開為兩個獨立的工程,D部署在獨立的服務器上,T工程該如何遠程獲取D的覆蓋率數據呢?

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: IDEA
相關文章:
主站蜘蛛池模板: 铅山县| 秦皇岛市| 松江区| 峨眉山市| 五寨县| 澎湖县| 买车| 得荣县| 东乡族自治县| 浏阳市| 正阳县| 龙川县| 兴城市| 玉树县| 洪湖市| 甘德县| 福清市| 花莲市| 嘉兴市| 宜兰县| 鹤峰县| 临沂市| 房产| 蒙城县| 嘉黎县| 锡林郭勒盟| 中超| 额尔古纳市| 乌兰县| 庆城县| 卓资县| 汕头市| 萨迦县| 探索| 互助| 太保市| 韶关市| 东海县| 灯塔市| 旬邑县| 自贡市|