gpt4 book ai didi

java - jqwik - 如何选择测试值?

转载 作者:行者123 更新时间:2023-12-01 14:21:13 25 4
gpt4 key购买 nike

在 jkwik 网站上的第一个示例中,有一个生成器可能会生成大量“可被 3 整除”的值:

@Property
boolean every_third_element_starts_with_Fizz(@ForAll("divisibleBy3") int i) {
return fizzBuzz().get(i - 1).startsWith("Fizz");
}

@Provide
Arbitrary<Integer> divisibleBy3() {
return Arbitraries.integers().between(1, 100).filter(i -> i % 3 == 0);
}

jqwik 会为所有可能的值运行属性测试,还是会从此列表中选择值?如果是第二种情况,如何选择?

最佳答案

在这种情况下,jqwik 将生成所有可能的值,因为只有 100 个候选值需要考虑,而 100 小于生成值的默认数量,即 1000。由于还进行了过滤,因此只有 33 个低于 100 的数字正在生成可被 3 整除的。

在无法完全覆盖一个值的可能范围的情况下,选择值

  1. 来自一组典型的边缘情况,例如最小值 (1) 和最大值 (100)
  2. (伪)从所有值的集合中随机选择。随机分布数字被扭曲,使较低的数字更有可能被选中。

关于java - jqwik - 如何选择测试值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58555538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com