测试设计是基于需求、规格和产品分析开发测试场景和数据的过程。其产生的目的是结构化测试,以确保最大覆盖率并最小化重复努力。
问题的背景:
以前的测试是凭直觉进行的,这导致了检查中的漏洞和资源的低效使用。测试设计方法提高了质量和覆盖的完整性。
问题:
没有正式化的技术存在过度测试相似测试或相反,遗漏关键情况的风险。另外,很难在发布前证明测试的充分性。
解决方案:
引入测试设计技术可以合理分配资源,确定优先检查,并进行覆盖控制。关键技术:
关键特性:
仅依据边界值测试是否足以实现完整覆盖?
不,还需要考虑正面/负面场景,业务逻辑检查和非等价案例。
在什么情况下更好使用成对测试而不是等价划分?
当存在多个参数具有不同值范围时,成对测试更有效地发现参数之间的交互错误。
基于过时规格进行测试是否足够?
不,规格必须得到更新,否则测试的覆盖率将与当前产品不匹配。
测试“年龄”字段时,仅选择了18岁、25岁和40岁,而边界上的关键错误(0,100)在发布之前没有被发现。
优点:
缺点:
使用等价类和边界值方法:测试覆盖了0、1、17、18、99、100、101以及范围内的典型值。
优点:
缺点: