假设整数状态,在测试运行之间定义了步长



我正在编写一个带有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提供的每个示例都独立于任何其他示例 - 如果这不适用于您的用例,假设可能是这项工作的错误工具。

最新更新