2014-12-01 2 views
0

간단한 질문 : CUnit 테스트에서 새로 테스트 한 변수의 내용을 표시 할 수 있습니까? Printf()는 테스트 중에 표시되지 않으며 어쨌든 사용하고 싶지 않습니다. 예를 들어 , I는 출력 결과를 Cunit의 부탁ASSERT 된 변수의 내용 표시

(MQUEUE_PRI_MASK & 플래그)

것이 가능?

Suite: Message Queue Test 
    Test: mqueue_init ...passed 
    Test: mqueue : Test send & rcv functions ...passed 
    Test: mqueue : Test mqueue priority ...passed 
    Test: mqueue : Test mqueue flags ...0FAILED 
    1. utils/test_mqueue.c:117 - CU_ASSERT_EQUAL((MQUEUE_PRI_MASK & flag),MQUEUE_PRI_HIGH) 
    Test: mqueue_free ...passed 

예상 결과 :

Suite: Message Queue Test 
    Test: mqueue_init ...passed 
    Test: mqueue : Test send & rcv functions ...passed 
    Test: mqueue : Test mqueue priority ...passed 
    Test: mqueue : Test mqueue flags ...0FAILED 
    1. utils/test_mqueue.c:117 - CU_ASSERT_EQUAL(5 ,MQUEUE_PRI_HIGH) 
    Test: mqueue_free ...passed 

감사 다음은 Cunit의의 전류 출력입니다!

답변

0

내장 된 어설 션 매크로로는 불가능하지만 직접 작성하는 것은 어렵지 않습니다. < CUnit/CUnit.h의 매크로 정의를 살펴보십시오. CU_assertImplementation()의 변형을 작성해야 할 것입니다. 원본 소스를 템플릿으로 사용하십시오.