pytest
插件
pytest
pytest-html 生成html格式的自动化测试报告
pytest-xdist 测试用例分布执行,多cup分发
pytest-ordering 改变测试用例执行顺序
pytest-rerunfailures 用例失败重跑
allure-pytest 生成美观的测试报告
安装 pip install -r txt
安装 pip install -U pytest
查看版本
pip show pytest
pytest --version
测试函数执行
用例文件夹中打开命令行,执行pytest 或py.test
pytest运行规则:查找当前目录及其子目录下以test_*.py或*_test.py文件,找到文件后,在文件中找到以test开头函数并执行。
测试类执行
模块名:test_ 、_test
测试类:Test开头,不能有__init__方法
测试方法:必须以test开头
pytest会找到符合规则(test_.py和_test.py)所有测试,因此它发现两个test_前缀功能。 如果只想运行其中一个,可以指定传递文件名test_class.py来运行模块:
备注: -q, --quiet decrease verbosity( 显示简单结果)
py.test -q test_class.py
- 文件名以test_*.py文件和*_test.py
- 以test_开头的函数
- 以Test开头的类,test_开头的方法,并且不能带有__init__ 方法
- 所有的包pakege必须要有__init__.py文件
- 断言使用assert
主函数模式
(1)运行所有,pytest.main()
(2)运行指定模块 :加模块名
参数详解:pytest.main(['-s'])
-s:表示输出调试信息
-v:详细信息
命令行模式
(1)pytest
参数详解:
通过读取pytest.ini配置文件执行
用例执行等级
pytest.mark.run(order=1)
用例分组
pytest.mark.smoke (smoke是组名)
跳过用例
pytest.mark.skip(reason="跳过原因")
pytest.mark.skipif(1==1, reason="跳过原因")
setup/teardown
setup_class/teardown_class
@pytest.fixture()
scope:表示的是被标记的方法的作用域
params:参数化
autouse:自动执行
ids:参数化别名
name:方法别名
生成json格式的临时报告
--alluredir ./report/json
作者:csyts
出处:https://www.cnblogs.com/csyts/p/17754830.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!