Pytest用例中断言详解

对于Warnning的断言,其实与Exception的断言的用法基本一致。这里就不介绍了,关于更多的Exception和Warnning的断言可以参考Pytest的官方文档:

https://docs.pytest.org/en/latest/assert.html#assertions-about-expected-exceptions

优化断言

我们可以在异常的时候,输出一些提示信息。这样报错后。可以方便我们来查看原因。

拿最开始的例子来说,在assert后面加上说明(在断言等式后面加上 , 然在后写上说明信息):

# content of test_assertions.py
class TestAssertions(object):
    def test_string(self):
        assert "spam" == "eggs","校验字符串'spam'是否等于'eggs'"

执行测试用例结果:

FAILED                   [100%]
AssertionError: 判断字符串'spam'是否等于'eggs'
spam != eggs

Expected :eggs
Actual   :spam


self = 

    def test_string(self):
>       assert "spam" == "eggs","校验字符串'spam'是否等于'eggs'"
E       AssertionError: 校验字符串'spam'是否等于'eggs'
E       assert 'spam' == 'eggs'

test_assertions.py:4: AssertionError

这样当断言失败的时候,会给出自己写的失败原因了 E  AssertionError: 校验字符串'spam'是否等于'eggs'

上一页12下一页


留言