您好,我对如何为成对测试创建表格有疑问。 例如,如果我有三个参数,每个参数可以获得两个不同的值。那么如何创建一个包含所有可能组合的输入表?它看起来像这样吗?成对测试:如何创建表格?
| 1 2 3
-----------
1 | 1 1 1
2 | 1 2 2
3 | 1 1 2
4 | 1 2 1
每个参数是否对应每列? 但是由于我有3个参数,每个参数可以取2个不同的值。测试用例的数量应该是2^3
不是吗?
您好,我对如何为成对测试创建表格有疑问。 例如,如果我有三个参数,每个参数可以获得两个不同的值。那么如何创建一个包含所有可能组合的输入表?它看起来像这样吗?成对测试:如何创建表格?
| 1 2 3
-----------
1 | 1 1 1
2 | 1 2 2
3 | 1 1 2
4 | 1 2 1
每个参数是否对应每列? 但是由于我有3个参数,每个参数可以取2个不同的值。测试用例的数量应该是2^3
不是吗?
有链接到这里一些有用的工具的好文章:
http://blog.josephwilk.net/ruby/pairwise-testing-with-cucumber.html
有趣的文章,谢谢你 – 2011-05-17 14:32:48
对于参数:每列是一个参数,每一行都是可能的组合。下面是表:
| 1 2 3
-----------
1 | 1 1 1
2 | 2 1 1
3 | 1 2 1
4 | 1 1 2
5 | 2 2 1
6 | 2 1 2
7 | 1 2 2
8 | 2 2 2
所以2^3 = 8个可能的组合,你可以看到:)
对于值:每列是一个值,并且每行是一个可能的组合:
| 1 2
--------
1 | 1 1
2 | 2 1
3 | 1 2
4 | 2 2
他们是2^2 = 4种可能的组合。希望能帮助到你。
1)请注意,成对测试是不是所有的扫描参数的值的详尽所有可能的组合。首先,这样的扫描会给你大量的测试用例,几乎没有现有的系统能够运行所有的测试用例。其次,软件系统的成对测试是基于希望具有最高数量可能值的两个参数是该系统故障的最高百分比的罪魁祸首。
这当然只是一个希望,而且迄今为止几乎没有严谨的科学研究能够证明这一点。
2)我在讨论成对测试的文档中经常看到的东西,如this,是所有可能值的列表(又名成对测试表)不是以一种深思熟虑的方式构建的。这造成混乱。
在您的情况下,所有参数的可能值(2个值)都是相同的,因此您可以选择这三个参数中的任意两个参数来构建表格。你可以注意的是组合的顺序:你首先迭代右上角的参数,然后左边的下一个参数,依此类推......
如果你有两个参数p1和p2, p1有两个可能的值Apple和Orange;和P2具有红色和蓝色两个可能的值,那么你的配对试验台将是:
index| p1 p2
------------------
1 | apple red
2 | apple blue
3 | orange red
4 | orange blue
注意成对测试** **没有得到有关**所有可能的组合**而是要确保两个参数的每个组合至少由一个测试用例覆盖。 – 2011-05-16 10:04:55
@Lieven,是的,我意识到这一点,但是你不需要先制作这张表,然后找出所有的配对吗? – starcorn 2011-05-16 10:09:07
@starcom - 作为学习练习和/或简单情况下,这可能是有用的,但除此之外,你应该使用一个工具。有许多免费工具可用。我们使用Microsoft的PICT。 – 2011-05-16 10:18:19