目录
一、pytest单元测试框架
二、 单元测试框架和自动化测试框架有什么关系
三、pytest简介
四、使用pytest默认的测试用例规则及基础应用
五、pytest测试用例的运行方式
六、pytest执行测试用例的顺序
七、如何分组执行
八、pytest跳过用例
九、pytest框架实现的一些前后置(固件、夹具)处理
十、YAML文件实现接口自动化
一、pytest单元测试框架
(1)什么是单元测试
单元测试是指在软件开发过程中,针对软件的最小单位(如函数、方法等)进行正确性的检查测试。
(2)常见的单元测试框架
Java:junit和testing
python:unittest和pytest
(3)单元测试框架主要做什么?
1. 测试发现:从多个文件中找到我们的测试用例
2. 测试执行:按照一定的顺序和规则执行并生成结果
3. 测试判断:通过断言判断预期结果和实际结果的差异
4. 测试报告:统计测试进度、耗时、通过率,生成测试报告
二、 单元测试框架和自动化测试框架有什么关系
(1)什么是自动化测试
自动化测试包括一切通过工具(程序)的方式来代替或辅助手工测试的行为。其主要手段是模拟手工测试,通过组织编写自动化脚本执行测试用例,解决测试工作量大的问题,自动化测试能有效的提高测试效率。
(2)自动化测试的作用
1. 提高测试效率,降低维护成本
2. 减少人工干预,提高测试准确性,增加代码的复用性
(3)二者的关系
单元测试是自动化测试的组成部分之一
三、pytest简介
1. pytest是一个非常成熟的python单元测试框架,比unittest更加灵活,容易上手
2. pytest可以和selenium、request、qppium结合实现web自动化、接口自动化、app自动化
3. pytest可以实现测试用例的跳过及rerun失败用例重试
4. pytest可以和allure生成非常美观的测试报告
5. pytest可以和Jenkins持续集成
6. pytest有很多强大的插件
pytest-html (生成html格式的自动化测试报告)
pytest-xdist (测试用例分布式执行,多cpu分发)
pytest-ordering (用于改变测试用例的执行顺序)
pytest-rerunfailures (用例失败后重跑)
allure-pytest (用于生成美观的测试报告)
在这里我们可以一次性将这些插件一起导入项目中,具体操作如下:
输入pytest -version 即