? CPPUNIT_ASSERT_EQUAL(expected, actual):判断expected和actual的值是否相等,如果不等输出错误信息。
? CPPUNIT_ASSERT_EQUAL_MESSAGE(message, expected, actual):与CPPUNIT_ASSERT_EQUAL类似,但断言失败时输出message信息。
? CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, delta):判断expected与actual的偏差是否小于delta,用于浮点数比较。
? CPPUNIT_ASSERT_THROW(expression, ExceptionType):判断执行表达式expression后是否抛出ExceptionType异常。
? CPPUNIT_ASSERT_NO_THROW(expression):断言执行表达式expression后无异常抛出。
四、 核心内容
? 测试对象(Test,TestFixture,...)
? 测试结果(TestResult)
处理测试用例执行结果, Observer Pattern
? 测试结果监听者(TestListener)
TestListener作为TestResult的观察者,担任实际的结果处理角色
? 结果输出(Outputter)
将结果进行输出,可以制定不同的输出格式
? 对象工厂(TestFactory)
用于创建测试对象,对测试用例进行自动化管理
? 测试执行体(TestRunner)
用于运行一个测试
核心内容 ---Test
? 所有测试对象的基类
? CppUnit采用树形结构来组织管理测试对象,类似于目录树
组合设计模式(Composite Pattern),Test的两个直接子类TestLeaf和TestComposite分别表示“测试树”中的叶节点和非叶节点,其中TestComposite主要起组织管理的作用,就像目录树中的文件夹,而TestLeaf才是最终具有执行能力的测试对象,就像目录树中的文件。
文章来源于领测软件测试网 https://www.ltesting.net/