搭建CxxTest單元測試框架

2021-10-02 20:35:35 字數 1235 閱讀 1425

cxxtest軟體框架提供了一套**框架和**生成工具。

測試人員需要使用c++標頭檔案定義測試用例。在測試用例中,通過定義測試方法,來打包需要的測試專案。測試方法中可以呼叫開發人員編寫的函式,類,變數,宣告等,來實現對這些函式,類,變數,宣告進行測試和驗證。

測試函式中需要使用cxxtest提供的斷言巨集,來測試比較結果。這些結果如果非預期,會被作為失敗或者異常,被cxxtest記錄下來。從而實現單元測試自動化。

cxxtestgen工具

執行測試程式

一般大型專案,往往都使用者多個可執行程式,多個庫檔案,以提供豐富穩定可維護的應用功能。c++**一般使用makefile來管理。通過定義通用的makefile巨集和變數,將

以下就是基於現有專案makefile框架增加和設計的cxxtest引入方式。

在每個模組目錄下增加test目錄,用於存放測試用例檔案。

建議測試用例標頭檔案使用副檔名.hxx。自動生成的擴充套件名為.cxx。開發人員使用的標頭檔案.hpp,原始檔.cpp。

這樣規範的好處是使用git等版本管理時,可以區分出檔案型別。同時設定ignore檔案。

在makefile檔案中定義tests變數,包含測試用例檔名,定義test_srcs變數,包含依賴的源檔名(不含副檔名)。

事實上我一般是定義srcs包含源檔名。這樣只需要

test_srcs = $srcs就可以避免重複定義列表了。

為什麼不直接用srcs呢,因為test_srcs中不能含main函式的實現。

可執行程式以test_開頭,後面跟模組名,可以是庫名,可以是可執行程式名。

可執行程式使用-v開關,可以顯示測試用例中的跟蹤除錯日誌資訊。

#ifndef test_light_trigger_hxx_

#define test_light_trigger_hxx_

#include "light_trigger.hpp"

#include #include class testlighttrigger:public cxxtest::testsuite

};#endif /* test_light_trigger_hxx_ */

測試框架 cxxtest

官網1 github頁面2 在 mytest資料夾下準備如下檔案,其中myfunc.h中是被測試的函式標頭檔案,myfunc.c是該函式的實現,mycxxtest.h是使用cxxtest測試框架進行測試的函式 myfunc.h ifndef myfunc h define myfunc h inta...

使用CxxTest測試框架

vs2003中使用cxxtest測試框架 2.假設測試專案project1。在project1目錄新建新建空白專案testpriject1。3.開啟專案屬性,修改屬性 生成事件 預生成事件 新增命令 cxxtestgen.pl error printer o runner.cpp h 4.修改屬性 ...

go Test 單元測試 測試框架

1.建立乙個名為 test.go 的檔案 如果是包中的單元測試,就在包所在目錄下建立該檔案 並將下面的 新增到其中,函式命名統一為test t testing.t package main 包中的單元測試main替換成包名 import testing func testsum t testing....