【自动化测试】Pytest框架 —— Pytest的基本使用(二)

文章介绍了Pytest框架的一些关键参数,如-v、-q、-s、-x和--maxfail等,以及用例的命名规则。还提到了PytestExitCode的不同状态表示,如0表示所有测试通过,1表示有测试失败。此外,文中指导了如何在PyCharm中配置以Pytest方式运行测试用例,以提高测试效率和结果的可读性。
摘要由CSDN通过智能技术生成

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 


最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值