1、pytest编写用例规范
1)pytest编写测试用例,测试用例写在函数或者类中。用例必须以test_开头,如果用例写在类中,类名必须以Test开头
2、pytest前置后置
1)沿用unittest前后置
pytest沿用unittest前后置方法(setup/teardown),函数里面的setup/teardown不用带self,类里面的setup/teardown必须带self。
1.1用例级别前后置:setup()/teardown()------类和类外的用例可用
1.2类级别前后置:使用@classmethod装饰,前后置方法为: setup_class(cls)/teardown_class(cls)
1.3模块级别前后置:setup_moudle()/teardown_moudle()
2)fixture
见后面笔记
3、断言
pytest断言如下:
assert 表达式
4、pytest用例收集及用例执行
pytest不需要主动收集用例,pytest命令行执行时自动收集
1、命令行执行用例
pytest [option]
命令行在哪个目录下执行,就以哪个目录为rootdir
如何自动收集用例?
1.目录--从哪个目录下搜索
2.文件名--符合test_开头的.py文件,一定是用例
3.函数名--类/方法
--函数以test_开头
--以Test开头(不含__init__)的类下的test_开头的方法
* pytest -s -v 控制台显示详细的用例执行情况
2、pytest.main()执行
1.在项目下建main.py文件
2.引入pytest,使用:pytest.main([“-s”, ”-v”])
3、用例执行顺序
1.文件名:以ASCII码顺序执行
2.模块内部:顺序执行
5、pytest生成测试报告
pytest使用插件生成测试报告,常用有:pytest-html/allure等
1、pytest-html生成测试报告
1.使用命令行pytest --html=report.html在当前目录下生成测试报告
2.使用pytest --html=./report/repoet.html,指定在report目录下生成测试报告
3.所有命令行都可以添加在pytest.main()里
2、allure生成测试报告
1.命令行pytest --allure=指定目录/测试结果
2.使用allure server allure报告目录生成测试报告
3.命令可添加进pytest.main()
原文:https://www.cnblogs.com/xiao-yin-30/p/13517095.html