單元測試工具 CUnit 簡介(4)

發表于:2015-04-22來源:uml.org.cn作者:火龍果軟件點擊數: 標簽:CUnit
或者 CU_ErrorCode error = CU_register_nsuites(2, suites1, suites2); 這些函數的返回值和包注冊函數、測試用例關聯函數相同 4.5 設置當前活動測試包和測試用例 CU_Erro

  或者

CU_ErrorCode error = CU_register_nsuites(2, suites1, suites2);

  這些函數的返回值和包注冊函數、測試用例關聯函數相同

  4.5 設置當前活動測試包和測試用例

CU_ErrorCode CU_set_suite_active(CU_pSuite pSuite, CU_BOOL fNewActive)

  CU_ErrorCode CU_set_test_active(CU_pTest pTest, CU_BOOL fNewActive)

  這些函數被用來測試包測試用例為當前活動包和當前活動測試用例,一個測試包或者測試用例在執行測試時不會被執行,除非用戶將它設置為是當前活動的。所有的測試包和測試用例在創建時被默認設置為活動的。當前活動狀態可以通過pSuite->fActive或pTest->fActive獲取。這樣,客戶端就有能力動態地選擇測試用例去執行測試。如果參數對應的包或者用例不存在則返回CUE_NOSUIT或CUI_NOTEST。

  4.6 修改測試包和測試用例的屬性

CU_ErrorCode CU_set_suite_name(CU_pSuite pSuite, const char *strNewName)
CU_ErrorCode CU_set_test_name(CU_pTest pTest, const char *strNewName)
CU_ErrorCode CU_set_suite_initfunc(CU_pSuite pSuite, CU_InitializeFunc pNewInit)
CU_ErrorCode CU_set_suite_cleanupfunc(CU_pSuite pSuite, CU_CleanupFunc pNewClean)
CU_ErrorCode CU_set_test_func(CU_pTest pTest, CU_TestFunc pNewFunc)

  4.7 測試包和測試用例的查詢

  大多數情況下,客戶端可以通過注冊測試包和關聯測試用例獲取它們的引用。有時候客戶端可能需要有能力去檢索某個測試包或測試用例的引用。CUnit提供給客戶端獲取某個測試包或測試用例信息的能力。

CU_pSuite CU_get_suite(const char* strName)
CU_pSuite CU_get_suite_at_pos(unsigned int pos)
unsigned int CU_get_suite_pos(CU_pSuite pSuite)
unsigned int CU_get_suite_pos_by_name(const char* strName)

  這些函數使用戶查詢注冊到當前活動注冊簿中的測試包??梢酝ㄟ^傳入名字、位置參數來獲取測試包,如果該測試包不存在,則返回NULL。位置參數從1開始到注冊簿中的測試包數。按名字查詢的方式只返回測試包鏈表中的第一個測試包。如果注冊簿沒有初始化則錯誤碼為CUE_NOREGISTRY,相應的,如果按名字查找的包不存在,錯誤碼為CUE_NO_SUITENAME且返回NULL。

CU_pTest CU_get_test(CU_pSuite pSuite, const char *strName)
CU_pTest CU_get_test_at_pos(CU_pSuite pSuite, unsigned int pos)
unsigned int CU_get_test_pos(CU_pSuite pSuite, CU_pTest pTest)
unsigned int CU_get_test_pos_by_name(CU_pSuite pSuite, const char *strName)

  如上函數和測試包查詢類似。

  5. 運行測試

  5.1 常用相關函數

#include 
void         CU_automated_run_tests(void)
CU_ErrorCode CU_list_tests_to_file(void)
void         CU_set_output_filename(const char* szFilenameRoot)
#include 
typedef enum     CU_BasicRunMode
CU_ErrorCode     CU_basic_run_tests(void)
CU_ErrorCode     CU_basic_run_suite(CU_pSuite pSuite)
CU_ErrorCode     CU_basic_run_test(CU_pSuite pSuite, CU_pTest pTest)
void             CU_basic_set_mode(CU_BasicRunMode mode)
CU_BasicRunMode CU_basic_get_mode(void)
void             CU_basic_show_failures(CU_pFailureRecord pFailure)
#include 
void CU_console_run_tests(void)
#include 
void CU_curses_run_tests(void)
#include 
unsigned int CU_get_number_of_suites_run(void)
unsigned int CU_get_number_of_suites_failed(void)
unsigned int CU_get_number_of_tests_run(void)
unsigned int CU_get_number_of_tests_failed(void)
unsigned int CU_get_number_of_asserts(void)
unsigned int CU_get_number_of_successes(void)
unsigned int CU_get_number_of_failures(void)
typedef struct CU_RunSummary
typedef CU_Runsummary* CU_pRunSummary
const CU_pRunSummary CU_get_run_summary(void)
typedef struct CU_FailureRecord
typedef CU_FailureRecord*  CU_pFailureRecord
const CU_pFailureRecord CU_get_failure_list(void)
unsigned int CU_get_number_of_failure_records(void)
void CU_set_fail_on_inactive(CU_BOOL new_inactive)
CU_BOOL CU_get_fail_on_inactive(void)

原文轉自:http://www.uml.org.cn/Test/201404151.asp

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97