使用Google Test的乙個簡單例子

2021-05-24 03:29:53 字數 2142 閱讀 8933

本部落格http://blog.csdn.net/livelylittlefish 貼出作者(三二一@小魚)相關研究、學習內容所做的筆記,歡迎廣大朋友指正!

0. 引子

本例是從

gtest-1.5.0

自帶的sample

中的sample1

改寫而來,筆者只新增了乙個求

n的階層的函式,如下。

void factorial(int n, int

&result )

目的是想測試像這樣將返回值放在引數中返回的函式。

對於該函式,新增的單元測試**如下。

test (factorialtest , mytest )

1.

要測試的**

要測試的**

(sample.h)

**如下。

要測試的**

(sample.cpp)

**如下。

2. 單元測試**

單元測試**

(test.cpp)

如下。

3. 編譯

3.1 linux平台

makefile

檔案,請參考

「linux平台如何編譯使用google test寫的單元測試?」

3.2 win32平台

make.bat

檔案,請參考

「win32

平台如何編譯使用

google test

編寫的單元測試?」 。

4. 執行結果

4.1 linux平台

執行結果如下。

# ./test

running main() from gtest_main.cc

[**********] running 7 tests from 2 test cases.

[----------] global test environment set-up.

[----------] 4 tests from factorialtest

[ run      ] factorialtest.negative

[       ok ] factorialtest.negative (0 ms)

[ run      ] factorialtest.zero

[       ok ] factorialtest.zero (0 ms)

[ run      ] factorialtest.positive

[       ok ] factorialtest.positive (0 ms)

[ run      ] factorialtest.mytest

[       ok ] factorialtest.mytest (0 ms)

[----------] 4 tests from factorialtest (0 ms total)

[----------] 3 tests from isprimetest

[ run      ] isprimetest.negative

[       ok ] isprimetest.negative (0 ms)

[ run      ] isprimetest.trivial

[       ok ] isprimetest.trivial (0 ms)

[ run      ] isprimetest.positive

[       ok ] isprimetest.positive (0 ms)

[----------] 3 tests from isprimetest (0 ms total)

[----------] global test environment tear-down

[**********] 7 tests from 2 test cases ran. (0 ms total)

[  passed  ] 7 tests.

7

個測試均通過。

4.2 win32平台

執行結果如下。

technorati 標籤: 單元測試;google test

GoogleTest框架 使用總結 一

18.02.24二次整理。基礎部分全部完畢 18.02.16整理。閒暇整理,不定期更新 關於斷言 assert x巨集 與預期結果 expect x 的區別,谷歌官方給出了很好的解釋 翻譯成中文,就是斷言未通過,斷言會中斷之後當前測試函式的測試 因為之後的測試沒有任何意義 而普通的expect會報告...

google test的安裝與使用

1 google test的安裝 按照readme檔案進行操作 解壓後 unzip gtest x.y.z.zip linux環境進入資料夾編譯時 configure,make 使用vs的話可以直接開啟msvc裡面的工程檔案 其中在linux上編譯時,提示 bash configure 許可權不夠 ...

使用AfxGetMainWnd函式的乙個心得

使用afxgetmainwnd函式獲取mfc程式中的主框架類指標是乙個常用作法。但是你會發現這一做法有時也會失靈。不信,你測試一下下面的 執行ontest1函式,你會發現客戶區並沒有列印 來自執行緒的字串 下面我們把執行緒函式變一下 執行ontest1函式,我們發現檢視客戶區出現了 來自執行緒的字串...