1. 程式人生 > 其它 >單元測試相關

單元測試相關

1.單元測試的用例是輸入資料和預計輸出的集合。

2.被測函式的輸入引數:

被測試函式內部需要讀取的全域性靜態變數;

被測試函式內部需要讀取的成員變數; 函式內部呼叫子函式獲得的資料; 函式內部呼叫子函式改寫的資料; 嵌入式系統中,在中斷呼叫時改寫的資料; 3.預計輸出: 1.被測函式的返回值 2.被測函式的輸出引數 3.被測函式所改寫的成員變數 4.被測函式所改寫的全域性變數 5.被測函式中進行的檔案更新 6.被測函式中進行的資料庫更新 7.被測函式中進行的訊息佇列的更新 4.驅動程式碼、樁程式碼、mock程式碼 , 驅動程式碼是用來呼叫被測函式的,而樁程式碼和 Mock 程式碼是用來代替被測函式呼叫的真實程式碼的。

5.實際軟體專案中如何開展單元測試?

1. 並不是所有的程式碼都要進行單元測試,通常只有底層模組或者核心模組的測試中才會採 用單元測試。 2. 你需要確定單元測試框架的選型,這和開發語言直接相關。比如,Java 最常用的單元測 試框架是 Junit 和 TestNG;C/C++ 最常用的單元測試框架是 CppTest 和 Parasoft C/C++test;框架選型完成後,你還需要對樁程式碼框架和 Mock 程式碼框架選型,選型的 主要依據是開發所採用的具體技術棧。 通常,單元測試框架、樁程式碼 /Mock 程式碼的選型工作由開發架構師和測試架構師共同決 定。 3. 為了能夠衡量單元測試的程式碼覆蓋率,通常你還需要引入計算程式碼覆蓋率的工具。不同 的語言會有不同的程式碼覆蓋率統計工具,比如 Java 的 JaCoCo,JavaScript 的 Istanbul。在後續的文章中,我還會詳細為你介紹程式碼覆蓋率的內容。 4. 最後你需要把單元測試執行、程式碼覆蓋率統計和持續整合流水線做整合,以確保每次代 碼遞交,都會自動觸發單元測試,並在單元測試執行過程中自動統計程式碼覆蓋率,最後 以“單元測試通過率”和“程式碼覆蓋率”為標準來決定本次程式碼遞交是否能夠被接受。