在 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 会为所有可能的值运行属性测试,还是从该列表中选择值?如果是第二种情况,它如何选择?