【发布时间】:2011-04-08 21:09:33
【问题描述】:
作为一名测试人员,我关心的一个问题是始终确保完整的测试覆盖率。这可能会变得很困难,因为有时可能的组合数量确实很多。让我们举个例子。泡茶的好例子
要泡茶,您可以使用红茶、绿茶或白茶。 (3 个变量)
您可以使用牛奶或水(2 个变量)
您可以使用糖或蜂蜜或不使用(3 个变量)
你可以让它变冰或变热(2 个变量)
如您所见,现在如果我想测试所有可能的泡茶方法(假设有一个假设软件可以制作各种茶),那么我必须测试:3x2x3x2 组合 = 36,因为确实有36种独特的泡茶方法
在这种情况下哪种算法最好。我可以看到嵌套的 for 循环是最好的。我说的对吗?
【问题讨论】:
-
我认为您的意思是组合,而不是排列。它们是两个不同的数学概念。
-
是的,你是对的。对不起,我总是在两者之间混淆。让我看看我是否可以编辑这篇文章 - 我是新人:)
-
这不是一个与编程语言无关的问题。各种测试工具有不同的方法来处理排列。如果您想知道如何合二为一,请询问那个。
-
我想了解更多关于 Python 语言的知识,但是我觉得这是一个算法类型的问题,考虑更多关于算法的想法可能会很有用。但是,是的,特定语言的答案会更好!
标签: algorithm language-agnostic for-loop combinations