c 單元測試框架之gtest

2021-09-29 04:21:37 字數 869 閱讀 6443

搞了3個禮拜的單元測試了,把最近所學所用的東西記錄一下,順便為公司接下來要做的單元測試培訓做下背書。

首先什麼是單元測試。

在物件導向程式設計中,通常乙個類會承擔乙個單一的職責,所以我們可以用類來劃分單元。單元測試,就是針對專案中的各個類進行測試。它側重於發現單元內部的邏輯錯誤,屬於白盒測試的範疇。

單元測試強調以下幾點:

語句覆蓋:選擇足夠的測試資料,使得**的每個語句都至少被執行一次。

判定覆蓋:選擇足夠的測試資料,使得程式的每個判定條件都至少出現一次真值和一次假值。

條件覆蓋:使得每乙個判斷語句的每個邏輯條件可能的值至少出現一次。

條件組合覆蓋:即當乙個判定條件由多個條件組合二成時,使得每個條件的各種可能的組合都出現一次。

資料覆蓋:即用盡可能多的資料傳入介面中進行測試。

單元測試入口。

在c++中,任何程式都需要main函式,gtest同理,下面是單元測試的入口main。

#include int main(int argc,char **ar**)

測試用例編寫。

首先我們得有乙個介面:

int sum(int a,int b)

測試用例:

test(calculate,test_sum)

expect_eq(expected,actual),這個斷言用來判斷actual與expected是否相等。expected是預期值,actual是實際值。

當二者相等時,測試通過。

就是這麼簡單。

gtest單元測試

1 用於加入源,方便更新。sudo add apt repository ppa ubuntu toolchain r test 2 更新 sudo apt get update 3 將 usr bin gcc和 usr bin g 這兩個快捷方式給刪除 sudo update alternativ...

C 單元測試框架 gtest 5 gmock

google mock 簡稱 gmock 是google在2008年推出的一套針對c 的 mock框架,它靈感取自於 jmock easymock harcreat。google mock是用來配合 google test 對c 專案做單元測試的。它依賴於 googletest。當你寫乙個原型或是測...

c 單元測試工具之 gtest

gtest是谷歌為c 開發的單元測試框架,該框架基於xunit架構。gtest提供了較豐富的測試特性,且其命令列方式輸出介面友好美觀,是c 單元測試工具的較佳選擇。先從這裡 configure make 這裡google沒有提供make install行為來安裝,我們需要手動安裝。繼續執行以下命令 ...