2、生成测试数据的流程分析步骤主要为:
1)按照等价区分法,将表切分成不同的集合(也就是表设计是的子表),这里最重要的是确定数据集的切分是的最大业务概念分类。
如本例中的往来单位信息表,应该首先按照顾客/收货人/供应商/运输商切分成4等分数据集。
以顾客为例,下一个的重要信息就是顾客状态了,失效顾客一般来说就是判断其是否生效,提示出错即完成,因此其他数据对测试用例来说是没有任何意义的,只要准备一条数据即可。
然后根据项目最大候选输入数,以及相互项目的可能的排列组合,进行数据的细分设计。
2)作为第2步来说,只用一条数据进行测试是危险的,因此需要准备多条的测试数据。
3)作为第3步,适当的准备Null/“”/Full-Width等的边界值、特殊值测试数据即可。
作为总体的数据量,大概20多条顾客数据就可以保证整个系统测试的测试用例使用。
基于我们假设的测试数据的覆盖率层次,我们可以按照下述图形示例进行测试数据的准备:
步骤1:通过等价区间法来减少数据复杂度
主要是要按照数据的大、中、小层次进行分类,减少数据准备的复杂度。
步骤2:通过识别项目相互间的影响要素提供数据覆盖率
由于很能做到穷举测试,因此需要使用直交法等手法取得测试质量和投入成本间的平衡。
步骤3:准备测试数据覆盖率=C1层的测试数
步骤4:结合边界值法准备多件测试数据
由于各种类型的测试数据只准备一件在测试上是危险的,因此需要对各种类型的测试数据准备多条测试数据。
步骤5:对数据下工夫,提高测试数据到数据覆盖率C2层
对准备的多条数据,可以在数据上下工夫,把空值、Null、最大值、最小值、数据位数等等的边界值和特殊值条件嵌入在数条的测试数据中,在尽可能少的测试数据下提供尽可高覆盖率的测试数据组合。
步骤6:在各个测试中,有必要时按需添加部分数据
根据上面提出的测试数据准备步骤,让我们用一个具体的示例来演示测试数据准备的技巧。
基本思路是按照排列组合、边界值、特殊值的多少,考虑测试数据覆盖率进行测试数据准备。
1、按照最大可选择的项目候选值进行数据设计的示意图如下:
====================================分割线================================
最新内容请见作者的GitHub页:http://qaseven.github.io/