
5、Pytest参数介绍
-
-v:打印用例执行的详细过程。 -
-q:只显示整体测试结果。(显示简略过程) -
-s:用于显示输出调试信息,包括测试函数中print()函数输出的信息。 -
-x,--exitfirst:在第一个错误或测试失败时立即退出。示例:在第N个用例失败以后,结束测试执行。
第1次失败,就停止测试:
pytest -x ./test_a.py -
--maxfail=num:表示出现几个用例失败就停止执行测试。出现两个失败就终止测试:
pytest --maxfail=2 ./test_a.py -
-h:帮助。 -
-n:支持多线程或者分布式运行测试用例。例如:
pytest -vs /testcase/test_login.py -n 2-n 2表示支持分布式运行测试用例,并且分配两个线程来执行。或者
pytest.main(['-vs','test_a.py'],'-n=2') -
--reruns NUM:失败用例重跑。示例:
pytest.main(['-vs','test_a.py'],'--reruns=2')
表示如果一个用例测试失败了,再重新执行两次,也就是一共执行三次该用例。 -
-k args:根据测试用例的名字,搜索匹配字符串,来执行匹配上的测试用例。
例如:pytest -vs ./test_a.py -k "ao" -
--collect-only:收集将要执行的用例,但不会执行用例。例如:
pytest --collcet-onty -
-r option:生成简略的指定需求的报告。
提示:
以上功能直接带参数执行启动命令就能够实现,而且还是很多其他的参数,以后在实际工作中好好总结,这里就不一一演示了。
前提要安装好前面提到的Pytest插件要安装好。
pytest-rerunfailures:失败case重复执行。pytest-xdist:测试用例分布式执行,也可以说是多CPU分发。
6、Pytest框架用例命名规则
Pytest可以在不同的函数中、包中发现用例,发现的规则如下:
- 测试文件名以
test_’开头,以_test’结尾.py文件。(必须有下划线) - 以
test_开头的函数。(以下有没有下划线都可以) - 以
test_开头的方法。 - 测试类以
Test开头,并且类中不能带有init方法。
要注意的是所有的包必须要有init.py文件,在使用PyCharm编辑器时会自动生成。
7、Pytest Exit Code说明
Exit Code 0:所有用例执行完毕,全部通过。Exit Code 1:所有用例执行完毕,存在Failed的测试用例。Exit Code 2:用户中断测试执行。Exit Code 3:测试执行过程中发生了内部错误。Exit Code 4:Pytest命令行使用错误。Exit Code 5:未采集到可用测试用例文件。
提示:
Exit Code是公共API的一部分,可以使用以下方法直接导入和访问:也就是在编写测试用例的时候,我们也可以通过枚举的方式获取
Exit Code进行判断或者断言。步骤1:导入
from pytest import ExitCode步骤2:调用(都是常量)
pytest.ExitCode.OK
8、在PyCharm中以Pytest的方式运行测试用例
步骤1:
点击File —> Settings —> Tools —> Python Integrated Tools —> Testing
将default test runner由【unittests】变为【pytest】,apply应用一下。

步骤2:
在PyCharm的Edit configurations...中配置以pytest方式运行测试用例。
点击PyCharm右上角的Edit configurations...,
在Edit configurations...中点击左上角的+号标志,添加Python tests —> pytest

步骤3:
然后选择target运行的测试文件,可以选择module(文件名),比如test_01.py,也可以选择文件路径scripts path。

设置完成后点击apply应用。
最后:
我们在执行测试用例后,查看结果面板如下:

会发现比之前查看测试结果好用、美观多了。
END
END绵薄之力
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
加入我的软件测试交流群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)
软件测试面试小程序
被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!
涵盖以下这些面试题板块:
1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux
6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

获取方式 :

2241

被折叠的 条评论
为什么被折叠?



