肖sir__pytest
pytest
课程安排

一、pytest介绍
1、Pytest是什么?
pytest 是 Python 语言中最主流、最简单、企业使用率最高的自动化测试框架,以极简的语法和强大的扩展性著称,广泛应用于各类测试场景
2、为什么测试人员必须学?
3、pytest框架优点:
简单易用:pytest 的语法非常简洁清晰,对于编写测试用例来说非常友好,几乎可以在几分钟内上手。
自动发现测试:pytest 能够自动发现项目中的测试文件和测试函数,无需手动编写繁琐的配置。
丰富的断言库:pytest 内置了丰富的断言库,可以轻松地进行测试结果的判断。
支持参数化测试:pytest 支持参数化测试,能够快速地对多组输入进行测试。
插件丰富:pytest 有着丰富的插件生态系统,可以通过插件扩展各种功能,比如覆盖率测试、测试报告生成
4、为什么不用自带的 unittest?
新手必懂:Python 自带 unittest 非常繁琐,Pytest 完全碾压。
一、unittest 缺点:
(1)必须写类、必须继承、必须 self
(2)断言写法复杂 self.assertEqual ()
(3)前置后置非常死板
(4)无法批量参数化、无成熟插件
二、Pytest 优势(重点记忆):
(1)语法极简,不用写类也能跑用例
(2)原生 assert 断言,通俗易懂
(3)Fixture 灵活管理前置后置
(4)一行代码实现批量用例
(5)报告、重试、并行、全覆盖插件齐全
==========================================
二、环境安装
1、必须要安装好python和pycharm
2、升级pip:python -m pip install --upgrade pip
3、安装方式:
(1)pip install -U pytest
(2) 在pycharm中安装
(3)卸载 pip uninstall pytest(有疑问)
(4)查看pytest版本:(终端看到一个版本号 说明安装成功了)
pytest --version
2、pytest常见插件安装
命令:
pip install pytest-html pytest-cov pytest-xdist pytest-mock pytest-order
pytest‑html:生成网页测试报告
pytest‑cov:统计代码测试覆盖率
pytest‑xdist:多线程加速跑用例
pytest‑mock:模拟数据、解耦依赖
pytest‑order:控制用例执行顺序
以上安装好pytest
调试案例:
(1)成功案例
在test下的模块下,执行函数

(2)失败案例

==========================================
三、pytest编写测试样例的规则
(一)test命名的要求
(1)测试文件以 test_ 开头(以 test 结尾也可以)。
(2)测试类以 Test 开头,并且不能带有 init 方法
(3)测试函数以 test 开头
(4)断言使用基本的assert即可
(5) 按照一定顺序执行文件和类、方法((小写英文--->大写英文--->0-9数字))

(二)test命名的注意点
核心禁令:测试类中严禁定义__init__ 构造方法!一旦添加,该类下的所有测试用例将直接被框架跳过,导致执行结果全部失效,且无明显报错。
==========================================
pytest由两部分组成:
用例主体部分(通常单独放在一个py文件):主体部分写测试用例
用例运行语句(通常放在一个main文件):执行测试用例

浙公网安备 33010602011771号