失败信息
之前的测试函数中用assert
进行相等断言,它还可以在测试用例执行失败时定义输出信息。
assert 1==2,"这里是一些定义的信息,可以拥有变量值a=%s" % a
失败时输出信息
异常判断
对于一些异常的测试用例,assert也可以利用pytest.raises
针对异常进行判断。
def test_error():
with pytest.raises(ZeroDivisionError) as error :
1/0
assert error.type==ZeroDivisionError,"值是%s"% error.type
assert "zero"in str(error.value)
通过对类型以及返回值进行比较,确认异常报错信息和预期是否一致。
预判断失败
针对会失败的测试用例,如果错误类型与预期一致,则认为是在计划内的执行失败,不需要打印详细信息。
@pytest.mark.xfail(raises=ZeroDivisionError)
def test_xfail():
1/0
xfail
标识代表这个用例预计到失败,如果通过,会在结果中显示xpass
,失败则显示xfail
。增加raises
后,错误类型为ZeroDivisionError
显示xfail
,其它类型显示failed
,不报错则显示xpass
。
自我记录,有错误欢迎指正~
网友评论