|
知识路径: > 测试技术的分类 > 面向对象的软件测试技术 > 面向对象软件测试用例设计 >
|
相关知识点:6个
|
|
|
|
在OO软件中,基于故障的测试具有较高的发现可能故障的能力。由于系统以满足用户的需求为目的,因此,基于故障的测试要从分析模型开始,考察可能发生的故障。为了确定这些故障是否存在,可设计用例去执行设计或代码。
|
|
|
看一个简单的例子。软件开发人员经常忽略问题的边界,例如,当测试Divide操作(该操作对负数和零返回错误)时,我们考虑边界,“零本身”用于检查是否程序员犯了如下错误:
|
|
|
|
|
|
当然,这种方法的有效性依赖于测试人员如何感觉“似乎可能的故障”,如果OO系统中的真实故障被感觉为“难以置信的”,则本方法实质上不比任何随机测试技术好。但是,如果可以从分析和设计模型进行深入的检查,那么基于故障的测试则可以用相当低的工作量来发现大量的错误。
|
|
|
基于故障测试也可以用于集成测试,集成测试可以发现消息联系中“可能的故障”。
|
|
|
“可能的故障”一般为意料之外的结果、错误地使用了操作/消息、不正确的引用等。为了确定由操作(功能)引起的可能故障必须检查操作的行为。
|
|
|
这种方法除用于操作测试外,还可用于属性测试,用以确定其对于不同类型的对象行为是否赋予了正确的属性值。因为一个对象的“属性”是由其赋予属性的值定义的。
|
|
|
应当指出,集成测试是从客户对象(主动),而不是从服务器对象(被动)上发现错误。正如传统的软件集成测试是把注意力集中在调用代码,而不是被调用代码一样,即发现客户对象中“可能的故障”。
|
|
|