对于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 :spamself = 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'