Следующий тест:
def test_something():
assert "ddd" == "pepe"
При запуске с pytest выдает это сообщение об ошибке:
E AssertionError: assert 'ddd' == 'pepe'
E - ddd
E + pepe
Однако, если мы переместим метод assert в другой файл assertion.py
:
class CustomerAssertor(object):
def __init__(self,name):
self.name =name
def assert_name(self,expected):
assert self.name ==expected
И мы изменили тест на:
from sql_gen.test.utils.assertion_util import CustomerAssertor
def test_something():
CustomerAssertor("ddd").assert_name("pepe")
Теперь я получаю следующую ошибку:
self = <assertions.CustomerAssertor object at 0x7fbcc3d31588>, expected = 'pepe'
def assert_name(self,expected):
> assert self.name ==expected
E AssertionError
Это сообщение не так информативно, как ононе скажу, какова ценность имени, почему?