2010-06-08 43 views

回答

5

CPPUNIT_ASSERT(variable < 0);怎么样?

+0

因为在失败的情况下不会引用变量值 – Mekk 2018-03-02 16:49:41

3

下面我们CppUnit的测试模板是这样评价块:

/* 
The following macros for adding test cases are available: 

- CPPUNIT_TEST(memberFunction): Add a member function to the suite. 

- CPPUNIT_TEST_EXCEPTION(memberFunction, exception): Add a member function to 
    the suite, which fails if it does not throw the specified exception type. 

- CPPUNIT_TEST_FAIL(memberFunction): Add a member function to the suite that 
    is expected to fail (i.e., it fails if the memberFunction does not fail). 


The following assert macros are available: 

- CPPUNIT_ASSERT(condition): Assert that condition is true. 

- CPPUNIT_ASSERT_MESSAGE(message, condition): Assert that condition is true, 
    and fail with message if it is not. 

- CPPUNIT_FAIL(message): Fail with the given message. 

- CPPUNIT_ASSERT_EQUAL(expected, actual): Assert that expected equals actual. 
    Note that expected and actual needs to be of the same type. 

- CPPUNIT_ASSERT_EQUAL_MESSAGE(message, expected, actual): Assert that 
    expected equals actual, and fail with message if not. 

- CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, delta): Assert that the 
    floating point values expected and actual do not differ by more than delta. 

- CPPUNIT_ASSERT_THROW(expression, ExceptionType): Assert that the given 
    expression causes an exception of type ExceptionType to be thrown. 

- CPPUNIT_ASSERT_NO_THROW(expression): Assert that the given expression does 
    not throw an exception. 
*/ 

它涵盖了大多数情况下。正如Oxley所说,CPPUNIT_ASSERT在这里是最好的选择,有或没有消息。

+0

非常感谢!作为一个新手,我需要这样的东西。 – 2010-06-08 17:27:28

+0

总是有在线文档:http://cppunit.sourceforge.net/doc/lastest/group___assertions.html – 2010-06-08 17:45:34