测试设计是从特定的测试依据中得到测试用例,是为了实现特定测试覆盖的标准化的方法。上面中的测试依据指的是有关测试的信息,比如项目背景、业务需求、领域知识、团队、进度、预算、风险等等,这些因素在经过测试分析后就是特定的测试依据,它们影响着测试设计与执行。测试设计是测试整个过程的总纲,通常是测试人员的测试思路的体现。 在测试界中,有着测试设计是测试的灵魂,也是测试人员的必修课之说。
在测试过程中,测试人员不可能穷举所有的测试场景或组合,因此在设计测试用例时,要学会抓住测试的要点或关键点,做合理的取舍,这些要点或关键点需要进行充分分析与设计,以达到理想的覆盖率。测试设计主要考虑的因素如下。
1、需求分析书、产品设计文档等
2、用户实际使用的场景
3、测试需求的目标
4、被测试的对象
5、测试的方法。
Ø 设定测试项包含哪些测试类型,比如功能测试、性能测试、安全性测试、可靠性测试、其他测试等。能清楚了解此次的测试类型是否有遗漏。
Ø 设定测试项的优先级,先设计高优先级测试项的测试用例,再设计低优先级测试项的测试用例。如果缺少风险分析意识或是风险分析能力不足,就先把所有测试项的测试用例写出来,然后再组织挑选测试用例的优先级。
Ø 测试用例在设计时,需要将具有相类似功能的测试项进行抽象并归类,不是简单的编写,更不是简单地复制文档的内容,设计测试用例是需要思考和优化的。
Ø 先设计主流程的、正向的测试用例,再设计逆向的、负面的(异常的、非法操作的)、扩展性的流程或功能的测试用例。
Ø 试图找出系统或组件的薄弱环节、边界点等,因为这些特殊区域存在更多的缺陷,需要得到更多的测试来降低测试的风险,达到所设定的测试目标。