龙空技术网

这9款优秀的pytest插件,让你的自动化测试项目更好用

测试老憨 166

前言:

如今姐妹们对“pytest html报告 保留报错”都比较关怀,大家都想要分析一些“pytest html报告 保留报错”的相关资讯。那么小编同时在网上汇集了一些有关“pytest html报告 保留报错””的相关文章,希望大家能喜欢,各位老铁们快快来学习一下吧!

pytest-repeat 重复运行测试

pytest-repeat是一个可以在一个测试会话中重复运行测试的pytest插件,如果测试总是断断续续的失败,这个插件就比较有用,默认是执行一次的,执行多次需要通过命令行参数指定

pytest -v -k --count=2

有需求的童鞋还可以看看这个pytest-rerunfailures这个插件也是关于失败重跑的

pytest-xdist 并行运行测试

通常测试都是一次执行的,虽然顺序可能每次都不一样。当测试用例不需要访问共享资源的时候,或者即使访问共享资源也不会对case之间造成影响,那么就可以通过这个插件进行并行运行,来提高自动化测试反馈速度。这本身也是我们做自动化测试的目的,尽早的暴露问题。通过pytest-xdist插件可以指定进程数量来同时运行

上面这个测试如果顺序运行,至少需要10秒的时间,加入并行运行测试,看一下对比效果

指定参数-n autp选项可以自动获取系统的CPU数量,也可以指定具体数值。

pytest-timeout 给测试设置超时时间

一般情况下,pytest里的测试时没有时间限制的,如果测试中设计请求服务、链接资源,这个时候加上超时时间还是比较好的。

pytest-timeout这个插件可以在测试代码上和命令行上加超时时间,测试代码标注的超时时间优先级高于命令行。

import pytestimport time@pytest.mark.parametrize('x', list(range(2)))def test_parallel(x):    time.sleep(1)  # 设置代码停滞一秒钟

pytest --timeout=0.5 test_parallel.py 指定超时时间是0.5秒,执行上面的case一定会报错

pytest-instafail 查看错误的详细信息

pytest通常会在运行结束后,才会显示错误和失败用例的堆栈信息,当我们运行的测试用例较多的时候,希望在有用例执行失败的时候就停止运行,那么这个插件可以通过在命令行指定--instafail参数就可以实现。

pytest-sugar 给测试运行过程中添加进度条

pytest-html 给测试生成HTML报告

通过指定--html=report.html在运行结束后会生成报告

报告不仅展示了各种类型的运行结果,还可以通过复选框进行筛选。

pytest-emoji 把测试状态符合替换成表情

命令行指定 --emoji 参数

有兴趣的同学可以去看一下它的python源代码,她是通过hook函数来改变表情符合

pytest-cov 测试覆盖率

pytest --cov=src 指定测试源代码,--cov-report=html 指定生成覆盖率测试报告

pytest-pep8、pytest-flake、pytest-pycodestyle

pytest-pep8是pytest-pycodestyle的老版本,都是检查代码是否符合PEP8规范,这两个插件只是检查是否符合代码风格,pytest-flake会做更多的静态分析检查

标签: #pytest html报告 保留报错