去年为朋友的一本书《软测之魂:核心测试设计精解》(肖利琼编著,2011年2月电子工业出版社出版)写序,这本书专注讨论测试的设计,范围比较广,不仅仅局限在软件测试用例的设计,而且还包括测试方案设计、测试执行设计、测试流程设计以及测试组织结构的设计,可谓是软件测试设计之大全。而本书将集中讨论软件测试用例的设计,因为测试用例设计是软件测试的核心工作之一,也是测试执行效率及其结果的有力的保证手段。
测试用例是能够独立执行的、最小的测试单元,更重要的是它能够帮助我们更快地找到软件中的缺陷。什么是好的测试用例?好的测试用例就是通过它的执行使发现缺陷的可能性增大,也就是人们常说的,越能帮助我们发现缺陷的测试用例,就越是好的测试用例。如何设计出好的测试用例?当然有大家熟知的等价类划分法、边界值分析法、决策表方法、正交试验法,等等。但只有这些方法是不够的,还需要结合自己的业务、结合软件的特点来找到更有效的方法来设计测试用例,设计出高质量的测试用例。下面就分别讨论几种值得推荐的方法。