代码之家  ›  专栏  ›  技术社区  ›  Bart Van Loon

pytest假设运行之间的测试隔离

  •  4
  • Bart Van Loon  · 技术社区  · 8 年前

    我刚刚从 quickcheck hypothesis

    快速检查 似乎只是使用不同的参数值多次运行测试函数,每次都运行我的函数范围固定装置。这也会在pytest的输出中产生更多的点。

    假设 然而,似乎只多次运行测试函数的主体,例如,这意味着在单独运行之间没有事务回滚。这意味着当我的测试将一些东西插入到数据库中时,我无法可靠地断言许多数据库条目,例如,因为之前运行的所有条目仍将挂起。

    我是错过了一些明显的东西,还是这是预期的行为?如果是这样的话,有没有办法得到假设作为变量在测试中使用的运行次数?

    1 回复  |  直到 8 年前
        1
  •  2
  •   DRMacIver    8 年前

    假设需要工作的方式(这是其对pytest quickcheck的许多改进的来源)不符合pytest关于测试执行的假设。问题是 mostly on the pytest side -当前的pytest fixture系统对如何运行测试有一些非常深入的假设,这些假设在控制测试执行方面不起作用,上一次我试图解决这个问题时,我在放弃之前花了大约一周的时间,基本上说pytest方面需要做一些更改,或者 someone needs to fund this work 如果情况好转的话。

    推荐文章