pytest单元测试框架
单元测试是指在软件开发当中,针对软件的最小单位(函数,方法)进行正确性的检查测试
单元测试框架主要做什么
- 测试发现:从多个文件里面找到我们的测试用例
- 测试执行:按照一定的顺序和规则去执行,并生成结果
- 测试判断:通过断言判断预期结果和实际结果的差异
- 测试报告:统计测试进度,耗时,通过率,生成测试报告
单元测试框架和自动化测试框架的关系
自动化测试框架
为了完成指定的系统的自动化测试,来封装的一整套完善的代码的框架,主要封装一些自动化的基础模块,自动化的管理模块,包括自动化测试的统计模块
作用
- 提高测试效率,降低维护成本
- 减少人工的干预,提高测试的准确性,增加代码的重用性
- 核心思想是让不懂代码的人也能够通过这个框架去实现自动化测试
pytest单元测试框架和自动化测试框架中的关系
- 单元测试框架:只是自动化测试框架中的组成部分之一
- pom设计模式:只是自动化测试框架中的组成部分之一
- 数据驱动
- 关键字驱动
- 全局配置文件的封装
- 日志监控
- 断言
- 报告邮件等
pytest简介
- pytest是一个非常成熟的python的单元框架
- pytest可以和selenium,request,appinum结合实现web自动化,接口自动化,app自动化
- pytest可以实现测试用例的跳过以及returns失败用例的重试
- pytest可以和allure生成非常美观的测试报告
- pytest可以和jenkins持续集成
- pytest有很多非常强大的插件,并且这些插件能够实现很多的实用操作
安装:
pip install pytest
验证是否安装成功:pytest --version
使用pytest,默认的测试用例的规则以及基础应用
- 模块名必须以test_开头或者_test结尾
- 测试类必须以Test开头,并且不能有init方法
- 测试方法必须以test开头
pytest测试用例的运行方式
1. 主函数模式