pytest 很全能的mark使用
pytest测试函数标记
1.pytest.mark.{自定义标签},自定义一个mark标签
https://www.cnblogs.com/zhuxibo/p/13921581.html
2. 跳过用例:@pytest.mark.skip @pytest.mark.skipif
描述:skip和skipif可以标记无法在某些平台上运行的测试功能,或者您希望失败的测试功能。要给跳过的测试添加理由和条件,应当使用skipif。
3.标记函数参数化(测试用例方法前加测试数据):@pytest.mark.parametrize("a,b,expected", testdata)
4.xfail-预期失败的函数
xfail(condition, reason)
--condition 预期失败的条件
--reason 预期失败的原因
5.标记用例执行顺顺序pytest.mark.run(order=1)
(需安装pytest-ordering)
数字数字形式: 小数、整数、负数
执行顺序:
1、由小到大
2、由正到负
3、未标记 的在正数后,负数前执行
顺序: 1,2,3,无标记,-3,-2,-1
6.标记超时时间 @pytest.mark.timeout(60)
或命令$pytest --timeout=300 (需安装pytest-timeout)
7. 标记失败重跑次数@pytest.mark.flaky(reruns=5, reruns_delay=1)
或命令$pytest --reruns 5 --reruns-delay 1 (需安装pytest-rerunfailures)
备注:最多失败重跑5次 & 如果失败则延迟1秒后重跑(可以不传)
相对于:测试失败后,还会再跑5次