前言
有些接口可能不太稳定,第一次跑的时候由于网络原因或者其它原因失败,但是重新跑2次又成功了。
对于这种需要重新跑几次的场景,可以使用用例失败重跑机制,需安装pytest-rerunfailures 插件。
场景示例
失败重跑需要依赖 pytest-rerunfailures 插件,使用 pip 安装就行
pip install pytest-rerunfailures
关于reruns参数的2个用法
re-run failing tests to eliminate flaky failures:
--reruns=RERUNS number of times to re-run failed tests. defaults to 0.
--reruns-delay=RERUNS_DELAY
add time (seconds) delay between reruns.
以下示例,故意让第二个用例失败test_demo.yml
test_get_demo:
name: get
request:
method: GET
url: http://httpbin.org/get
validate:
- eq: [status_code, 200]
test_post_demo:
name: get
request:
method: POST
url: http://httpbin.org/post
validate:
- eq: [status_code, 201]
运行用例
pytest test_demo.yml
失败重跑
设置 --reruns 2
重跑2次
pytest test_demo.yml --reruns 2
还可以在重跑的时候加间隔时间--reruns-delay 5
单位是秒
pytest test_demo.yml --reruns 2 --reruns-delay 5
标签:reruns,59,--,demo,用例,pytest,重跑,test
From: https://www.cnblogs.com/yoyoketang/p/17890646.html