新聞中心
CUnit是一個(gè)輕量級的C語言單元測試框架,它提供了一些宏和函數(shù),方便編寫測試用例和生成測試報(bào)告。在Linux下搭建CUnit環(huán)境,可以對C程序進(jìn)行自動(dòng)化測試和持續(xù)集成,提高軟件開發(fā)效率。本文將介紹如何在Linux系統(tǒng)中配置CUnit環(huán)境并編寫測試用例。

成都創(chuàng)新互聯(lián)公司專注于五家渠網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供五家渠營銷型網(wǎng)站建設(shè),五家渠網(wǎng)站制作、五家渠網(wǎng)頁設(shè)計(jì)、五家渠網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造五家渠網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供五家渠網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
一、安裝CUnit
在Linux系統(tǒng)中,可以通過包管理器安裝CUnit,命令如下:
“`bash
sudo apt-get install libcupunit1-dev
“`
安裝完畢后,可以檢查是否安裝成功:
“`bash
pkg-config –modversion cunit
“`
如果輸出版本號說明安裝成功。
二、配置工程
1. 添加頭文件
在C程序中使用CUnit需要添加頭文件,通常是”cunit/CUnit.h”。如果安裝了CUnit,則可以使用pkg-config來獲取CUnit的頭文件和庫文件路徑:
“`bash
pkg-config –cflags –libs cunit
“`
在編寫測試用例前,必須在代碼開頭添加如下相關(guān)頭文件:
“`c
#include
#include
“`
這里的”CUnit/Basic.h”是測試框架CUnit自帶的頭文件,他包含了一些基本的宏定義用來測試,它們可以很方便的進(jìn)行測試,例如:CU_ASSERT_EQUAL、CU_ASSERT_FATAL等等。
2. 編寫測試用例
測試用例是指針對函數(shù)或模塊的測試代碼,通常包括多組測試數(shù)據(jù)以及預(yù)期結(jié)果,用來檢測函數(shù)或模塊的正確性和健壯性。
例如,我們編寫一個(gè)求和的函數(shù)add(int a, intb),并編寫測試用例:
“`c
int add(int a, intb) {
return a+b;
}
void test_add() {
CU_ASSERT_EQUAL(add(1,2),3);
CU_ASSERT_EQUAL(add(0,0),0);
CU_ASSERT_EQUAL(add(10,-5),5);
}
“`
在測試函數(shù)中,我們使用了測試框架提供的宏定義如“CU_ASSERT_EQUAL”,并給出了不同的測試數(shù)據(jù)和預(yù)期結(jié)果。這些宏定義都對應(yīng)著不同的斷言、比較和測試方法,以保證函數(shù)的正確性和可靠性。
3. 編寫主程序
主程序是測試程序的入口,也是最終生成測試報(bào)告的地方。
一個(gè)典型的主程序通常包括:
“`c
CUnitMn
{
// 初始化測試程序
CU_initialize_registry();
// 添加測試程序到當(dāng)前測試集
CU_pSuite pSuite = CU_add_suite(“suite-name”, init, cleanup);
// 添加測試用例到測試集
CU_add_test(pSuite, “test-name”,test_add);
// 運(yùn)行測試用例
CU_basic_run_tests();
// 輸出測試報(bào)告
CU_cleanup_registry();
return 0;
}
“`
在這里,“CU_initialize_registry”函數(shù)用來初始化測試程序,建立測試集;“CU_add_suite”函數(shù)用來添加測試集,指定測試集名稱和初始化/清理函數(shù);“CU_add_test”函數(shù)用來添加測試用例到指定的測試集中,這里我們添加了名為“test_add”的測試;“CU_basic_run_tests”函數(shù)用來運(yùn)行所有測試用例,并打印測試報(bào)告;最后“CU_cleanup_registry”函數(shù)用來清除測試程序。
在主程序中,我們需要寫一些初始化/清理代碼,其中“init”和“cleanup”均為函數(shù)指針,它們分別用來初始化和清理測試。
三、編譯和測試工程
1. 編譯
在Linux系統(tǒng)中,可以使用gcc來編譯測試程序:
“`bash
gcc -o test program.c -lcunit
“`
這里,“test”是可執(zhí)行文件名,需要與程序名稱保持一致;“program.c”是C程序源代碼;“-lcunit”表示需要鏈接CUnit庫文件。
2. 運(yùn)行測試
在Linux系統(tǒng)中,可以直接運(yùn)行可執(zhí)行文件進(jìn)行測試:
“`bash
./test
“`
如果測試通過,將會(huì)輸出如下結(jié)果:
“`bash
CUnit – Runing CUnit tests.
S
OK (1 test)
“`
如果測試失敗,將會(huì)輸出如下結(jié)果:
“`bash
CUnit – Runing CUnit tests.
FE
Expected but was
“`
“FE”表示測試失敗,其中“Expected”表示預(yù)期值,“but was”表示實(shí)際值,這里預(yù)期值為1,實(shí)際值為2,說明測試未通過。
四、
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線:028-86922220在linux系統(tǒng)下怎么查看cunit已經(jīng)安裝?
rpm -qa|grep cunit,如果已經(jīng)安裝會(huì)顯示安裝的版本。
一般安裝了之后應(yīng)該有可用的二進(jìn)制文件,通常會(huì)讓運(yùn)放在/bin,/usr/bin,/usr/local/bin下,這個(gè)命令是可以直接執(zhí)行的,你可型滑喚以通過執(zhí)行這個(gè)命令來確定是否安裝卜凱。還有,如果你是通過tar包安裝的,一般在最后會(huì)有安裝的記錄顯示,可以查看最后關(guān)于install方面的信息,就可以知道安裝在什么地方了。
rpm -qa|grep cunit
正解
linux下 開源軟件主要使用哪些單元測試工具
太宴消多了。。舉幾個(gè),具體還得用度娘喊核搜索了解 使用鄭祥掘。。
C語言單元測試框架 CUnit
C++單元測試框架 crpcut
Objective-C的單元測試框架 CUT
Lua模擬測試工具 lmock
C/C++代碼診斷庫 NoBug
lua測試框架 ltest
Lua單元測試框架 busted
Haxe 單元測試框架 MUnit
MMIX單元測試框架 zMMIX
CPP unit和JUnit吧
試試VISUAL UNIT4
關(guān)于linux cunit配置的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都創(chuàng)新互聯(lián)科技公司主營:網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、小程序制作、成都軟件開發(fā)、網(wǎng)頁設(shè)計(jì)、微信開發(fā)、成都小程序開發(fā)、網(wǎng)站制作、網(wǎng)站開發(fā)等業(yè)務(wù),是專業(yè)的成都做小程序公司、成都網(wǎng)站建設(shè)公司、成都做網(wǎng)站的公司。創(chuàng)新互聯(lián)公司集小程序制作創(chuàng)意,網(wǎng)站制作策劃,畫冊、網(wǎng)頁、VI設(shè)計(jì),網(wǎng)站、軟件、微信、小程序開發(fā)于一體。
網(wǎng)站題目:LinuxCUnit配置詳解(linuxcunit配置)
文章位置:http://fisionsoft.com.cn/article/djgshsi.html


咨詢
建站咨詢
