用例称作负面测试用例。
3设计方法:
1、白盒技术:白盒测试是结构测试,所以被测对象基本上是源程序,以程序的内部逻辑为基础设计测试用例。白盒测试的测试用例设计:一般采用逻辑覆盖法和基本路径法进行设计。
逻辑覆盖是以程序内部的逻辑结构为基础的测试用例设计技术,这一方法要求测试人员对程序的逻辑结构有清楚的了解。逻辑覆盖可分为:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖与路径覆盖。
语句覆盖:在测试时,首先设计若干个测试用例,然后运行被测程序,使程序中的每个可执行语句至少执行一次。
判定覆盖法:在测试时,首先设计若干个测试用例,然后运行被测程序,使得程序中的每个判断的取真分支和取假分支至少经历一次,即判断的真假值均曾被满足。
条件覆盖法:在测试时,首先设计若干个测试用例,然后运行被测程序,要使每个判断中每个条件的可能取值至少满足一次。
判定条件覆盖法:在测试时,首先设计若干个测试用例,然后运行被测程序,使得判断中每个条件的所有可能至少出现一次,并且每个判断本身的判定结果至少出现一次。
路径覆盖法:在测试时,首先设计若干个测试用例,然后运行被测程序,要求覆盖程序中所有可能的路径。
基本路径覆盖法:是在程序控制流图的基础上,通过分析控制结构的环路复杂性,导出基本可执行路径集合,设计测试用例的方法。该方法把覆盖的路径数压缩到一定限度内,程序中的循环体最多只执行一次。设计出的测试用例要保证在测试中,程序的每一个可执行语句至少执行一次。
循环路径测试:基本路径覆盖法将循环限制在最多一次,这样虽然大大降低了需要覆盖的路径的条数,但对循环的测试却不充分了,因此还需要对循环路径进行测试。循环路径测试包含,简单循环的测试和嵌套循环的测试。
每一种覆盖方法都有其优缺点。通常在设计测试用例时应该根据代码模块的复杂度,选择覆盖方法。一般的代码的复杂度与测试用例设计的复杂度成正比。因此,设计人员必须做到模块或方法功能的单一性、高内聚性,使得方法或函数代码尽可能的简单;这样将可大大提高测试用例设计的容易度,提高测试用例的覆盖程度。
f基本路径测试法是在程序控制流图的基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。基本路径测试法包括以下5个方面:1、程序的控制流图:描述程序控制流的一r