软件测试丨 Pytest 学习笔记 -Mark 标记、Skip 跳过、xFail 预期失败
本文为霍格沃兹测试开发学社学员笔记分享
1、使用 Mark 标记测试用例
Mark:标记测试用例
场景:只执行符合要求的某一部分用例 可以把一个 web 项目划分多个模块,然后指定模块名称执行。
解决: 在测试用例方法上加 @pytest.mark.标签名
执行: -m 执行自定义标记的相关用例
pytest -s test_mark_zi_09.py -m=webtest pytest -s test_mark_zi_09.py -m apptest pytest -s test_mark_zi_09.py -m "not ios"
复制代码
警告解决办法
2、pytest 设置跳过、预期失败
Mark:跳过(Skip)及预期失败(xFail)
这是 pytest 的内置标签,可以处理一些特殊的测试用例,不能成功的测试用例
skip - 始终跳过该测试用例
skipif - 遇到特定情况跳过该测试用例
xfail - 遇到特定情况,产生一个“期望失败”输出
Skip 使用场景
调试时不想运行这个用例
标记无法在某些平台上运行的测试功能
在某些版本中执行,其他版本中跳过
比如:当前的外部资源不可用时跳过如果测试数据是从数据库中取到的,连接数据库的功能如果返回结果未成功就跳过,因为执行也都报错
解决 1:添加装饰器 @pytest.mark.skip@pytest.mark.skipif
解决 2:代码中添加跳过代码
pytest.skip(reason)
复制代码
复制代码
xfail 使用场景
与 skip 类似 ,预期结果为 fail ,标记用例为 fail
用法:添加装饰器 @pytest.mark.xfail
复制代码
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/05654818d1590d71458231582】。文章转载请联系作者。
评论