CUnit-Basic模式实例

今天继续运行CUnit Basic模式看看效果,Basic模式其实跟Console模式类似,只是Basic模式是非交互的,程序运行就直接开始执行测试。
Basic模式中所有的测试信息都是通过标准输出(stdout)输出,可以调用函数CU_basic_set_mode控制输出信息。测试结束可以调用函数CU_basic_show_failures输出所有的测试失败信息。

     CUnit - A unit testing framework for C - Version @VERSION@-@RELEASE@
     http://cunit.sourceforge.net/


Suite: SuiteOs
  Test: OS_T1_SLEEP_1 ... passed
  Test: OS_T1_SLEEP_2 ... passed
  
Suite: SuiteDsc
  Test: DSC_T1_OpenErr ... passed
  Test: DSC_T1_OpenSuc1 ... FAILED
    1. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:119  - hDsc!=kVA_ILLEGAL_HANDLE
    2. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:125  - VA_DSCR_Close(hDsc)==kVA_OK
  Test: DSC_T1_OpenSuc2 ...FAILED
    1. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:136  - hDsc0!=kVA_ILLEGAL_HANDLE
    2. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:139  - hDsc1!=kVA_ILLEGAL_HANDLE
    3. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:141  - VA_DSCR_Close(hDsc0)==kVA_OK
    4. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:142  - VA_DSCR_Close(hDsc1)==kVA_OK
  Test: DSC_T1_CloseErr ... passed
  
Suite: SuiteSc
  Test: DSC_T1_Reset1 ... passed

Run Summary:    Type  Total    Ran Passed Failed Inactive
              suites      3      3    n/a      0        0
               tests      7      7      5      2        0
             asserts     22     22     16      6      n/a

Elapsed time =  261.565 seconds


//下面是调用CU_basic_show_failures函数输出的失败项信息:
  1. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:119  - hDsc!=kVA_ILLEGAL_HANDLE
  2. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:125  - VA_DSCR_Close(hDsc)==kVA_OK
  3. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:136  - hDsc0!=kVA_ILLEGAL_HANDLE
  4. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:139  - hDsc1!=kVA_ILLEGAL_HANDLE
  5. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:141  - VA_DSCR_Close(hDsc0)==kVA_OK
  6. /home/suyd/other/env/dts3452/Project_v28/ACS/ViaccessDta/UnitTest/VoUnitTestDsc.c:142  - VA_DSCR_Close(hDsc1)==kVA_OK

最后附上上面运行测试的源码,VO_UnitTest_RegisterCommands实现代码跟上一篇Console模式的基本项目这里就不贴出来了。

void VO_UnitTest_EntryBasic(void)
{
    CU_ErrorCode cu_err=CUE_SUCCESS;
    
    mVUT_FCT_ENTER();

    cu_err = CU_initialize_registry();
    if (cu_err!=CUE_SUCCESS)
    {
        mVUT_TRACE((kVUT_NIV_CRITICAL,"CU_initialize_registry failed=%d.\n",cu_err));
        mVUT_RETURN;
    }

    cu_err = VO_UnitTest_RegisterCommands();
    if (cu_err!=CUE_SUCCESS)
    {
        mVUT_TRACE((kVUT_NIV_CRITICAL,"VO_UnitTest_RegisterCommands failed=%d.\n",cu_err));
        CU_cleanup_registry();
        mVUT_RETURN;
    }

    /* Run all tests using the CUnit Basic interface */
    CU_basic_set_mode(CU_BRM_VERBOSE);
    CU_basic_run_tests();
    CU_basic_show_failures(CU_get_failure_list());
    
    mVUT_TRACE((kVUT_NIV_INFO,"Test end, CU_cleanup_registry call\n"));
    CU_cleanup_registry();

    mVUT_RETURN;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值