1

我有一个包含许多字段的对象。每个字段都有不同的值范围。我想使用假设来生成这个对象的不同实例。

假设可以处理的字段值组合的数量是否有限制?或者搜索树假设创建的是什么样的?我不需要所有组合,但我想确保获得相当数量的组合,在这些组合中我为每个字段测试许多不同的值。我想确保假设在达到要生成的最大示例数之前不会进行 DFS

4

1 回答 1

1

TLDR:别担心,这是一个常见的用例,即使是幼稚的策略也能很好地工作。

Hypothesis 使用的实际搜索过程很复杂(如“主要作者的博士课题”),但它绝对不是深度优先搜索!简而言之,它是在伪随机数生成器上分层的均匀分布,覆盖引导的模糊器将其偏向探索较少的代码路径,并在此之上具有特定于策略的启发式。

总的来说,我相信这个过程会比我自己的判断或任何没有多年 QA 或测试研究经验的人的判断更信任这个过程来挑选好的例子!

于 2018-04-15T03:11:42.520 回答