问题标签 [python-hypothesis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何编写一个策略来生成带有 python 假设的元组列表?
我开始使用假设来编写测试。我喜欢它,但我坚持生成某种数据。
我有一个使用数据列表的测试,可以从元组(键,值)构造。
键可以是文本、整数或浮点数,值可以是任何可比较的值。对于一个测试,所有键必须是同一类型,所有值必须是同一类型。
我发现生成我想要的数据的唯一方法是这样的:
有没有更好的方法来生成我想要测试的所有数据类型组合?
python - 如何在假设中传递不同的 DataType 值以及如何在 Python 中检查返回类型和值是否正确
使用 Hypothesis 模块在 Python 中进行单元测试的示例代码。编写了简单的getTimeDelta
函数来获取两个日期之间的时间差。
想写getTimeDelta
函数的单元测试。使用假设模块来获得多个datetime
值。
问题是: 1. 如何传递不同的数据类型值,即time1
str 和time2
isdatetime
而无需编写多个函数?
仅检查返回值的数据类型,而不是实际结果是否正确。怎么做?
如何检查项目的数据类型,结果元组?
assertIsInstance
代码:
编辑 01:
我们可以通过hypothesis.strategies.one_of(*args)
,链接修复 #Question1
python - 使用faker的python假设单元测试
通过使用假设附加包Faker,我遇到了 python 单元测试的问题。我想测试我网站的登录过程,我已经有了单元测试场景,但我想用假设自动化场景。这是我用于电子邮件和密码验证的简单代码。
我总是发现这个错误。有什么我错过的吗?
我将代码更改为此。
这是警告。但伪装者有效。这会是个问题吗?
python-hypothesis - 在测试运行之间定义步长的假设整数策略?
我正在编写一个自定义搜索策略builds()
(这对这个问题无关紧要),它将使用假设.strategies.integers(min_value=None, max_value=None)来生成具有显式步长的整数数据,而不是比方说 delta 10
. 我不需要像[10, 20, 30, 40, etc.]
. 相反,我需要使用步长为 的整数值调用测试函数的后续调用10
,例如10
第一次调用、20
第二次调用等。我怎样才能最简单地实现这一点?
python-hypothesis - 基于假设的策略的示例测试用例?
什么被认为是当前测试基于假设的策略的最佳实践?有一些关于好的例子如何缩小HypothesisWorks/hypothesis-python/tests/quality/test_shrink_quality.py 的测试。但是,到目前为止,我找不到测试策略的数据生成功能(通常是性能等)的示例。
python - 如何创建使用 `builds()` 的可配置自定义假设策略?
builds()
我使用and创建了自定义假设策略@composite
(设计灵感来自文档中的这个示例)。这些策略的设计类似于下面的伪代码:
该策略照常使用,例如unittest
用作测试运行器:
现在我想让策略可配置到实际应用程序中,例如min_value
在integers(min_value=APP_SPECIFIC_INT_MIN, ...)
定义测试功能时定义。这可以通过像done here@composite
这样的agruments 来为策略完成。但是我怎样才能使使用可配置的策略呢?builds()
python - 使用 Hypothesis Python 生成条件数据
我想生成具有以下条件的大小为 2 的整数列表的列表。
- 第一个元素应该小于第二个元素并且
- 所有数据都应该是唯一的。
我可以使用自定义函数生成每个元组,但不知道如何使用它来满足第二个条件。
我可以通过以这种(低效?)方式迭代generate_date
几次来生成数据:
但是如何检查数据是否唯一?
例如,以下值无效:
但以下是有效的:
python-hypothesis - 假设搜索树
我有一个包含许多字段的对象。每个字段都有不同的值范围。我想使用假设来生成这个对象的不同实例。
假设可以处理的字段值组合的数量是否有限制?或者搜索树假设创建的是什么样的?我不需要所有组合,但我想确保获得相当数量的组合,在这些组合中我为每个字段测试许多不同的值。我想确保假设在达到要生成的最大示例数之前不会进行 DFS
python-hypothesis - 将示例用于返回类实例的策略
我有
我如何确保一个测试用例
和一个测试用例
生成?
我知道@example。这是正确的吗?
python-hypothesis - 拥有在不同策略之间不统一选择的策略
我想创建一个策略 C,90% 的时间选择策略 A,10% 的时间选择策略 B。
随机 python 库即使我播种它也不起作用,因为每次策略产生值时,它都会从随机生成相同的值。
我查看了 OneOfStrategy 的实现,他们使用 i = cu.integer_range(data, 0, n - 1) 随机生成一个数字
cu 来自内部 importhypothesis.internal.conjecture.utils as cu
我的策略可以使用 cu.integer_range 还是有其他实现?