我有一个非常简单的类,它在任何版本的 pytest>3.0.0 上都失败了。当我使用--pdb
.
from django.test import TestCase
class TestTestCase(TestCase):
"""Tests for the TestCase class."""
def test_that_client_exists(self):
"""Assert that the class has a client."""
assert self.client
我正在使用以下版本:
- 平台 Linux
- 蟒蛇 2.7.11
- pytest-3.3.1
- py-1.5.2
- 插件-0.6.0
- django-2.9.2
我收到以下错误:
self = <myproject.tests.test_test_case.TestTestCase testMethod=test_that_client_exists>
def test_that_client_exists(self):
"""Assert that the class has a client."""
> assert self.client
E AttributeError: 'TestTestCase' object has no attribute 'client'
但是,如果我降级到pytest==3.0.0
and pluggy-0.3.1
,代码将毫无问题地执行。我的问题是,这是怎么回事?这可能是什么原因造成的?
就好像 pytest 正在调用 ,test_that_client_exists
但没有调用__call__
which 调用_pre_setup
。
有没有人见过这样的事情?