罗湖网站建设 信科网络,河南省网站建设,零投入开网店,郑州百姓网征婚交友今天就给大家说一说pytest框架。
今天这篇文章呢#xff0c;会从以下几个方面来介绍#xff1a;
01、pytest框架介绍
pytest 是 python 的第三方单元测试框架#xff0c;比自带 unittest 更简洁和高效#xff0c;支持非常丰富的插件#xff0c;同时兼容 unittest 框架。…今天就给大家说一说pytest框架。
今天这篇文章呢会从以下几个方面来介绍
01、pytest框架介绍
pytest 是 python 的第三方单元测试框架比自带 unittest 更简洁和高效支持非常丰富的插件同时兼容 unittest 框架。这就使得我们在 unittest 框架迁移到 pytest 框架的时候不需要重写代码。
pytest框架优点
1、简单灵活容易上手
2、支持参数化
3、能够支持简单的单元测试和复杂的功能测试还可以用来做selenium/appium等自动化测试接口自动化测试pytestrequest
4、pytest具有很多第三方插件并且可以自定义扩展
02、pytest框架的安装
pytest框架的安装
pip install pytest
pytest框架使用注意事项
.py 测试文件必须以test_开头或者以_test结尾
测试类必须以Test开头并且不能有 init 方法
测试方法必须以test_开头
断言必须使用 assert
03、pytest运行方式
1、、如果不提供任何参数那么pytest会在当前目录及子目录下寻找以test_开头或者以_test结尾的测试文件且该文件中以test_开头的测试函数
2、当运行时指定测试文件的时候
1.此时目录一定要切换到测试文件所在的目录否则pytest搜索不到测试不会执行.
2.执行测试文件里的函数的时候会搜索以test_开头的测试函数执行不符合此规则的函数不会被执行
3.如果含有测试类那么允许该测试文件时会搜索类名以Test开头的类且该测试类中的函数命名也必须符合要求才会被执行
4、运行的方式可以在命令行也可以在主方法上面运行
例如如指定运行pythonDemo目录下的test_01模块 ......
if __name__ __main__:
pytest.main([pythonDemo/test_01.py])
或者命令行模式
pytest pythonDemo/test_01.py
其实呢pytest的运行方式花样非常多有很多参数可以使用可以达到不同的效果。
04、pytest框架常用插件及安装
pytest框架提供非常多的插件可以实现不同的功能今天给大家例举一下最常用的几种插件。
pytest-xdist
当用例量很多时运行时间也会变的很长如果想缩短脚本运行的时长就可以用多进程来运行。多cpu分布。
pytest-rerunfailures
在做测试时, 短时的网络波动会导致用例运行失败, , 此时就可通过重试运行用例的方式来解决问题。用例失败后重跑
pytest-html
是一个pytest用于生成XML/HTML测试报告的插件。HTML测试报告
pytest-assume
Pytest中可用assert断言, 但一个失败后面的断言将不再执行pytest-assume可以实现对多个断言多重校验的。
pytest-repeat
测试过程中会出现一些偶现的bug, 对于这种问题我们会针对此用例反复执行多次, 最终复现出问题来; pytest-repeat插件就能起到这个作用: 重复执行测试用例
pytest-ordering
pytest默认按字母顺序去执行的(小写英文---大写英文---0-9数字)
用例之间的顺序是文件之间按照ASCLL码排序文件内的用例按照从上往下执行
setup_module-setup_claas-setup_function-testcase-teardown_function-teardown_claas-teardown_module
但可以通过第三方插件pytest-ordering实现自定义用例执行顺序
好了今天先给大家介绍到这里
最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你