该插件提供了两个命令行选项,用于重新运行上次pytest调用的失败: --lf,--last-failed- 只重新运行上次失败的用例,如果没有失败则全部运行 --ff,--failed-first- 先运行故障然后再运行其余的测试。 对于清理(通常不需要),--cache-clear选项允许在测试运行之前删除所有跨会话缓存内容。
首先只运行失败用例:
创建一个demo,执行50个用例,其中2个失败,48个成功。代码如下:
import pytest
@pytest.mark.parametrize("i",range(50))
def test_num(i):
assert i not in (17,25)
运行结果:
========================= 2 failed, 48 passed in 0.24s =========================
如果运行失败用例,则在命令窗口执行
pytest --lf test_cache_1.py
运行结果Results (0.11s):
2 failed
- test_cache_1.py:10 test_num[17]
- test_cache_1.py:10 test_num[25]
48 deselected
从上述结果中可以明显看到程序只运行了失败的用例,其他正常用例明显取消操作
首先运行失败用例,在运行其他测试用例
以上述代码为例子,在命令窗口执行:
pytest --ff test_cache_1.py
运行结果: test_cache_1.py ⨯✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓✓
Results (0.21s):
48 passed
2 failed
- test_cache_1.py:10 test_num[17]
- test_cache_1.py:10 test_num[25]
从上述结果中可以看出先执行了失败的用例,在运行了其他的用例
原文地址:https://www.cnblogs.com/qixc/p/12171537.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。