在py.test中实现setUpTestData样式行为的正确方法是什么

问题描述 投票:1回答:1

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

我还没有真正得到py.test夹具系统,所以我没有看到应该怎么做。

在vanilla Django中,这个东西是通过setUpTestData实现的,它允许你在DB中为测试类创建一些fixture。然后在每个测试用例的开始处它删除一个事务保存点,并在每次测试结束时重置到该保存点。 (除此之外,它还在整个类中进行事务处理,以便在最后留下一个干净的数据库。)

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

pytest pytest-django
1个回答
0
投票

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

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

根据pytest-django问题列表,它看起来像之前已经提出过,但是没有针对修复的动作:

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

© www.soinside.com 2019 - 2024. All rights reserved.