携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第3天,点击查看活动详情
关于pytest
只要用过的都说好,pytest应该算是目前市面上使用率比较高的接口自动化测试框架,封装许多强大的功能。
首先就是其拥有不少强大的插件,有生成测试报告的(pytest-html以及allure-pytest),有定制用力执行顺序的(pytest-ordering),有失败重跑的(pytest-rerunfailures),失败重跑也是pytest的一个不错的特色。此外,pytest和市面上很多主流的工具都能够完美的接口来进行自动化,如何selenium、appium结合完成web、APP自动化。相信介绍pytest的好处的话可以花上几千字来描述。
因此对于一个强大的框架,作为一个测试工程师或者一个自动化测试工程师都是很有学习的必要的。
pytest基础篇
安装 :pip install pytest
默认规则(后续可以通过配置进行修改,但是一般都是使用默认规则):
1、py文件必须以test_开头或者_test结尾
2、类名必须要以Test开头
3、测试用例必须以test_开头*
运行方式
1、主函数运行
2、命令行运行
python -m pytest XXX(可传模块或者类,传方法则使用xx.py::class:function的形式),命令行形式在平时工作中用得较少,一般都是使用配置主函数
3、运行参数解析
-v:输出更加详细的运行信息
-s:输出调试信息
-n:多线程运行
--reruns 数字,失败重跑
-m :运行有相应标识的测试用例
--html 生成测试报告,注意这个命令的=号前后不能存在任何空格,否则无法正常生成
示例:pytest.main(['-vs','--html=./report.html','-n = 3','-reruns = 3'])
实例
通过简单的认识之后我们来写一个简单的get的请求
总结:
pytest是一个非常强大的框架,今天通过对概念上的理解对pytest也有了一定基础的了解,后续将通过大量的实例来展示pytest在测试不同场景下的表现。