测试用例设计方法(二)——正交实验法
正交实验法严格来说不是为测试用例设计的方法,它广泛用于各种实验实践中。是研究多因素多水平的又一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,正交试验设计是分式析因设计的主要方法。是一种高效率、快速、经济的实验设计方法。后来有个鬼子,将正交试验选择的水平组合列成表格,称为正交表。我们在测试用设计的时候,根据实际情况选择不同的表,直接映射生成用例。
闲话短说,正交实验法会几个关键词。因素和水平,对应测试中的条件和数值
假设测试有3个条件,A,B,C,每个条件有3个值
A:A1,A2,A3
B:B1,B2,B3
C:C1,C2,C3
那么每个条件都可以看作是一个因素,每个因素都有3个水平。
根据正交法可以设计如下用例
A B C
—————
A1 B1 C1
A1 B2 C3
A1 B3 C2
A2 B1 C3
A2 B2 C2
A2 B3 C1
A3 B1 C2
A3 B2 C1
A3 B3 C3
A1 B2 C3
A1 B3 C2
A2 B1 C3
A2 B2 C2
A2 B3 C1
A3 B1 C2
A3 B2 C1
A3 B3 C3
具体算法什么的,请自己百度吧。一般我们可以直接根据条件和值的数量,直接套用现成的正交表即可。
正交表具有以下两项性质:
(1)每一列中,不同的值出现的次数相等。例如在上面三水平正交表中,任何一列都有“1”、“2”、“3”,且在任一列的出现数均相等。
(2)任意两列中数字的排列方式齐全而且均衡。也就是说两两组合(如A1,B1),组合齐全且比例均衡。
(1)每一列中,不同的值出现的次数相等。例如在上面三水平正交表中,任何一列都有“1”、“2”、“3”,且在任一列的出现数均相等。
(2)任意两列中数字的排列方式齐全而且均衡。也就是说两两组合(如A1,B1),组合齐全且比例均衡。
以上两点充分的体现了正交表的两大优越性,即“均匀分散性,整齐可比”。通俗的说,每个因素的每个水平与另一个因素各水平各碰一次,这就是正交性。
说道这里,感觉正交法很类似全对偶方法。是的,我个人认为全对偶就是正交法的简化。他分别把正交表的两个性质的都满足了一半。对于一个严谨的实验,可能需要考虑各种情况,如因素的权重、结果的科学分析等,需要用严格的正交法。对于一般的用例设计,使用全对偶的方法已经基本可以满足了。
两个方法均有对应的工具,建议用工具自动生成,如果用例数相差不大,推荐用正交法。正交法用着正统的理论依据,它确实更科学更平衡。