如何解决如何使pytest忽略名为TestSomething的类?
我正在开发一种测试框架,它碰巧当然具有名为TestSomething
的类。而且我意识到我的测试失败了,因为pytest在导入后立即将这些类视为“我需要实例化和运行的东西!”。这绝对是行不通的。
import pytest
from package import TestSomethingClass
是否可以直接从pytest测试文件中导入此类?还是应该通过灯具间接使用它们?
同样的问题也适用于异常,因为我需要做类似的事情
with pytest.raises(TestsSomethingError):
解决方法
明确禁用
通过在冲突的类中将Test
标志设置为__test__
,您可以允许pytest忽略该特定类,以单词False
开头>
class TestSomethingClass(object):
__test__ = False
def test_class_something(self,object):
pass
功能:https://github.com/pytest-dev/pytest/pull/1561
配置文件
我们还可以在您的pytest.ini
文件中完全更改约定,并忽略所有以单词Example
开头的类名。但我不建议这样做,因为我们将来可能会遇到意想不到的后果。
#pytest.ini file
[pytest]
python_classes = !Example
Pytest约定
-
在类之外测试带有前缀的测试函数或方法
测试前缀测试类中的 -
测试前缀测试函数或方法(无 init 方法)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。