3

我有一堆固定的东西,我想为测试类做一次,但我也不希望相关的测试弄乱它。

我还没有真正得到 py.test 固定系统,所以我不知道应该如何完成。

在 vanilla Django 中,这些东西是通过 setUpTestData 实现的,它允许您在 DB 中为测试类创建一些固定装置。然后在每个测试用例开始时,它会删除一个事务保存点,并在每个测试结束时重置到该保存点。(这是除了围绕整个班级进行交易之外,以便在最后留下一个干净的数据库。)

我可以通过继承 Django 的 TransactionTestCase 来获得这个功能,但是 pytest-django 似乎想要在没有它的情况下运行,并且我已经实现了我需要的所有其他东西而不这样做。

4

1 回答 1

3

我已经四处寻找了很多,我能找到的最好的是这个 pytest 插件,我自己没有测试过:

https://github.com/tipsi/pytest-tipsi-django

根据 pytest-django 问题列表,看起来以前已经提出过这个问题,但没有朝着修复的方向发展:

https://github.com/pytest-dev/pytest-django/issues/514

于 2018-01-04T04:49:55.027 回答