我正在编写一个带有builds()
的自定义搜索策略(这与这个问题无关紧要(,它将使用hypothesis.strategies.integers(min_value=None,max_value=None(生成具有显式步长的整数数据,而不是假设delta 10
。我不需要像[10, 20, 30, 40, etc.]
这样的值列表。相反,我需要使用步长为 10
的整数值调用测试函数的后续调用,例如第一次调用使用 10
,第二次调用20
等。我怎样才能实现最简单的目标?
您可以轻松调整现有策略,例如通过以下方式生成偶数:
integers().map(lambda x: x * 2)
只是为了检查 - 您是否使用的是最新版本的假设? 您链接到 v1.8 的文档,该文档不受支持,并且功能明显低于当前版本 3.48。
最后,如果您需要在要构建的任何部分之间建立特定关系,请考虑composite
策略 - builds()
更简单,但不支持参数之间的依赖关系。
我需要使用步长为 10 的整数值调用测试函数的后续调用,例如第一次调用为 10,第二次调用为 20,依此类推。
假设仅支持通过hypothesis.stateful
模块进行有状态检验。
根据设计,@given
提供的每个示例都独立于任何其他示例 - 如果这不适用于您的用例,假设可能是这项工作的错误工具。