问题标签 [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.

0 投票
1 回答
333 浏览

python - 如何在 PyCharm 项目中添加 pyflakes、bottle、hypothesis?

如何将测试框架和 Web 框架添加到 PyCharm 项目。
如何在 PyCharm 项目中添加 pyflakes、bottle、hypothesis?

要安装上述框架和任何其他框架,请点击以下链接。

https://www.jetbrains.com/help/pycharm/installing-uninstalling-and-upgrading-packages.html

给出的解决方案来自以下答案,答案 1

0 投票
1 回答
1127 浏览

python - 假设检验:如何从另一个策略中采样值?

我必须使用示例数据测试一些功能:

其中每行中的第一个元素列表包含 N=(1 到 5) 个随机整数元素,这些元素通过以下方式生成:

每行中的第二个元素包含来自所有生成列表的所有唯一整数集合中的随机样本。

所以对于我的data例子:

  • 列表包含来自唯一集合 (10,20,30,40) 的值;
  • 每行中的第二个元素包含来自该集合的随机整数样本;

如何使用假设测试框架实施这样的策略?

这个不起作用:

0 投票
2 回答
173 浏览

python - 当明确要求不生成 inf 的假设策略

如果您运行data_strategy.example()几次,您会注意到结果中的某些值具有无限的实部或虚部。我的意图是明确禁止无限或 NaN 部分。

我究竟做错了什么?

更新:如果我使用

并将其转换为我的测试中的数组,问题似乎消失了。复数是否溢出?我没有收到关于假设溢出的通常弃用警告。

如果我使用

没有inf出现。

0 投票
1 回答
377 浏览

python - 使用 Hypothesis 在 fixed_dictionaries 中生成两个长度相等的列表

我正在尝试使用fixed_dictionaries其中两个键具有列表作为必须具有相同长度的值的策略来生成示例数据,例如:

如何强制执行此约束?我想我也许可以将一个定义为另一个的组合,但我不知道该怎么做。就像是:

0 投票
2 回答
418 浏览

python - 假设+单元测试测试锁定sqlite数据库

我正在尝试测试我的数据库类。这是它的简化示例。

所以,我想检查insert方法。测试用例类是:

db.insert问题是从测试方法调用时回溯中的“数据库被锁定” 。我将代码视为下一步:

  1. 打开第一个连接
  2. 插入数据
  3. 提交并关闭连接
  4. 打开第二个连接(在第一个被关闭之后)
  5. 使用 select 获取在步骤 2 中插入的数据
  6. 比较数据
  7. 如果输入和选择的数据不相等,则断言。

但是...如果连接一个一个地与数据库一起工作,我就不会收到有关数据库阻塞的消息,是吗?我知道库(单元测试或假设)使用线程,但我在文档中一无所获。

我也尝试照常运行它for并插入可枚举的数据。它工作正常。

如果我没有错,commit即使打开连接,每次调用方法都必须解除对数据库的阻塞,但似乎没有发生。

谁能帮我理解为什么我看到“数据库已锁定”消息?

0 投票
1 回答
1116 浏览

python - 为复合假设策略抑制 HealthCheck.too_slow

我有许多利用@composite我编写的策略的单元测试。该策略非常缓慢(它会生成复杂的对象),并且有时其中一项测试无法通过too_slow健康检查。发生这种情况时,我深深地叹了口气,然后补充说

到测试。

对于所有使用慢速策略的测试,有没有办法HealthCheck.too_slow一劳永逸地抑制?

0 投票
1 回答
156 浏览

python - 假设策略:对于每个“桶”,从桶中抽取一个值

我有以下方法在我的一项测试中生成随机数据:

如何将其转换为假设策略?

这是我使用的尝试hypothesis.strategies.composite,但很难知道我是否正确使用它:

0 投票
1 回答
199 浏览

python - 通过参数化递归调用,使用 Python 假设生成有效的二叉搜索树

如何在 Python 假设库中参数化递归策略?

我想通过使用递归策略is_valid_bst生成有效的 BST 来测试该函数是否有效。

0 投票
1 回答
620 浏览

python - 如何使用假设库创建日期时间索引的 pandas DataFrame?

我正在尝试使用以下代码创建一个用于代码测试目的pandas DataFrame的库:hypothesis

我收到的错误如下:

我怀疑这是因为当我构造DataFramefor时,index=我只传递了一个datetime元素,而不是ps.Seriesall 类型datetime。即使是这种情况(我不确定),我仍然不确定如何使用hypothesis图书馆来实现我的目标。

谁能告诉我代码有什么问题以及解决方案是什么?

0 投票
4 回答
1218 浏览

python - 如何查看 Python 的假设库的输出

在使用假设库并执行单元测试时,我如何查看该库在我的代码上尝试了哪些实例?

例子

问题是:如何打印/查看some_number库生成的变量?