相关疑难解决方法(0)

配置Pytest发现以忽略类名

Pytest的默认发现规则将从所有Test不带的Class导入__init__()。我遇到这种情况,导致导入了错误的类。

我正在测试使用Factory Boy的django项目。http://factoryboy.readthedocs.org/en/latest/构建一个名为的Django模型Testimonial

像这样:

class TestimonialFactory(factory.Factory):
    class Meta:
        model = models.Testimonial
Run Code Online (Sandbox Code Playgroud)

这个问题是factory.Factory没有__init__()。因此,py.test看到了Testimonials并尝试运行。依次尝试在pytest发现阶段将记录插入数据库(随之而来的是热闹和失败)。

我通过更改pytest.ini来寻找一种以Check而不是Test开头的Test类来解决问题:

[pytest]
python_classes=Check
Run Code Online (Sandbox Code Playgroud)

这不是我真正想要的。有什么方法可以明确告诉py.test忽略特定名称的测试?

python testing pytest

8
推荐指数
3
解决办法
3191
查看次数

标签 统计

pytest ×1

python ×1

testing ×1