1、第第2323章章 面向对象测试面向对象测试23.1 23.1 扩大测试的视角扩大测试的视角23.2 23.2 测试测试OOAOOA和和OODOOD模型模型23.2.1 OOA23.2.1 OOA和和OODOOD模型的正确性模型的正确性23.2.2 OOA23.2.2 OOA和和OODOOD模型的一致性模型的一致性23.3 23.3 面向对象的测试策略面向对象的测试策略23.3.123.3.1在在OOOO语境中的单元测试语境中的单元测试23.3.223.3.2在在OOOO语境中的集成测试语境中的集成测试23.3.323.3.3在在OOOO语境中的确认测试语境中的确认测试 23.4.1 OO23.
2、4.1 OO概念的测试案例设计的含义概念的测试案例设计的含义封装使得一些信息在某种程度上难于获得,继承封装使得一些信息在某种程度上难于获得,继承也造成了对测试的障碍,多继承进一步使测试复也造成了对测试的障碍,多继承进一步使测试复杂化。杂化。23.4.2 23.4.2 传统测试案例设计方法的可用性传统测试案例设计方法的可用性白盒测试可用于为类定义的操作的测试。黑盒测白盒测试可用于为类定义的操作的测试。黑盒测试对试对OOOO系统也是合适的。系统也是合适的。use-caseuse-case可以为黑盒测可以为黑盒测试及基于状态的测试的设计提供有用的输入试及基于状态的测试的设计提供有用的输入 。23.4
3、.4 OO23.4.4 OO程序设计对测试的影响程序设计对测试的影响23.5 23.5 在类级别可用的测试方法在类级别可用的测试方法23.6 23.6 类间测试案例设计类间测试案例设计类协作测试可通过应用随机和划分方法以及基于场景类协作测试可通过应用随机和划分方法以及基于场景的测试和行为测试来完成。的测试和行为测试来完成。生成生成多个类随机测试多个类随机测试案例的步骤:案例的步骤:1.1.对每个客户类,使用类操作列表来生成一系列随机测对每个客户类,使用类操作列表来生成一系列随机测试序列,操作将发送消息给其他服务器类;试序列,操作将发送消息给其他服务器类;2.2.对生成的每个消息,确定在服务器对象中的协作者类对生成的每个消息,确定在服务器对象中的协作者类和对应的操作;和对应的操作;3.3.对服务器对象中的每个操作,确定它发送的消息;对服务器对象中的每个操作,确定它发送的消息;4.4.对每个消息,确定下一层被调用的操作并结合这些操对每个消息,确定下一层被调用的操作并结合这些操作到测试序列中。作到测试序列中。类的类的STDSTD可用于帮助导出测试类的动态行为的测试序列可用于帮助导出测试类的动态行为的测试序列