Pytest初识
一、单元测试框架简介
1. 什么是单元测试
单元测试是指在软件开发过程中,针对软件的最小单位(函数,方法)进行正确性的检查测试。
2. 常用单元测试框架
2.1 Java 类别
-
junit
-
testng
2.2 Python 类别
-
unittest
-
pytest
3. 单元测试框架主要作用
-
测试发现:从多个文件中找到测试用例
-
测试执行:按照一定的顺序和规则去执行用例,并生成结果
-
测试判断:通过断言判断预期结果和实际结果的差异
-
测试报告:统计测试进度、耗时、通过率,生成测试报告
二、自动化测试框架简介
1. 什么是自动化测试框架
自动化测试框架是指为了完成一个指定的系统的自动化测试而封装的一整套的完成的代码。主要封装了自动化的基础模块、管理模块、测试的统计模块等等。
2. 自动化测试框架的作用
-
提高测试效率,降低维护成本
-
减少人工干预,提高测试的准确性,增加代码的重用性
-
核心思想是让不懂代码的人也能够通过这个框架去实现自动化测试
3. 单元测试框架和自动化测试框架的关系
单元测试框架只是自动化测试框架中的组成部分之一。一套完整的自动化测试框架还包括:pom设计模式、数据驱动、关键字驱动、全局配置文件的封装、日志监控、类似selenium和requests等功能模块的二次封装、断言系统、测试报告邮件等许多方面。
三、Pytest 简介
pytest 是一个非常成熟的 Python 单元测试框架,比 unittest 更加灵活,功能也更加强大。使用 pytest 主要有以下优点:
-
可以和 selenium,requests,appium 结合实现 web 自动化,接口自动化,app 自动化;
-
可以实现测试用例的跳过和失败用例重跑机制;
-
可以和 allure 结合生成非常美观的测试报告;
-
可以和 jenkins 持续集成;
-
有很多强大的插件:
-
pytest:指定用例执行方式
-
pytest-html:生成 html 格式的自动化测试报告
-
pytest-xdist:测试用例分布执行,多 CPU 分发
-
pytest-ordering:用于改变测试用例的执行顺序
-
pytest-rerunfailures:用例失败后重跑
-
框架和插件的下载:
1 # 直接通过 pip 下载 2 pip install pytest 3 pip install pytest-html 4 pip install pytest-xdist 5 pip install pytest-ordering 6 pip install pytest-rerunfailures