直播安排¶
| 整体安排 | 周数 | 课程内容 |
|---|---|---|
| 第一周 | 周一 | Python 编程语言 |
| 周二 | Python 编程语言 | |
| 周三 | Python 编程语言 | |
| 周四 | Python 编程语言 | |
| 周五 | pytest 单元测试框架 | |
| 第二周 | 周一 | Python 编程语言/算法 |
| 周二 | Python 编程语言 | |
| 周三 | 面向对象编程 | |
| 周四 | 面向对象编程实战 | |
| 周五 | pytest 单元测试框架进阶 | |
| 第三周 | 周一 | Web 后端开发 |
| 周二 | Web 后端开发 | |
| 周三 | Web 后端开发 | |
| 周四 | Web 前端开发 | |
| 周五 | Web 前端开发 | |
| 第四周 | 周一 | 人工智能开发 |
| 周二 | 人工智能开发 | |
| 周三 | 人工智能开发 | |
| 周四 | 人工智能开发 | |
| 周五 | 平台开发阶段考试 | |
| 第五周 | 周一 | 软件开发流程/业务需求分析/研发架构设计 |
| 周二 | SQL 语法与数据库 | |
| 周三 | SQL 语法与数据库实战 | |
| 周四 | Linux 环境部署 | |
| 周五 | Linux 环境部署实战练习 | |
| 第六周 | 周一 | 测试用例设计 |
| 周二 | Web 业务测试实战 | |
| 周三 | Web 业务测试实战 | |
| 周四 | App 业务测试实战 | |
| 周五 | 业务测试阶段考试/小班私教 | |
| 第七周 | 周一 | 用户端 Web 自动化测试 |
| 周二 | 用户端 Web 自动化测试 | |
| 周三 | 用户端 Web 自动化测试 | |
| 周四 | 用户端 Web 自动化测试/Allure 测试报告 | |
| 周五 | Web 自动化测试实战练习 | |
| 第八周 | 周一 | 用户端 Web 自动化测试框架搭建 |
| 周二 | 用户端 Web 自动化测试框架搭建实战 | |
| 周三 | 用户端 Web 自动化测试框架搭建实战练习 | |
| 周四 | 用户端 App 自动化测试 | |
| 周五 | 用户端 App 自动化测试 | |
| 第九周 | 周一 | 用户端 App 自动化测试 |
| 周二 | 用户端 App 自动化测试 | |
| 周三 | 用户端 App 自动化测试框架搭建 | |
| 周四 | 用户端 App 自动化测试框架实战 | |
| 周五 | UI 自动化测试阶段考试 | |
| 第十周 | 周一 | 接口测试 |
| 周二 | 接口测试实战 | |
| 周三 | 接口测试实战练习 | |
| 周四 | 接口自动化测试 | |
| 周五 | 接口自动化测试框架实战 | |
| 第十一周 | 周一 | 人工智能 web 自动化测试 |
| 周二 | 人工智能 app 自动化测试 | |
| 周三 | 人工智能 UI 自动化测试实战 | |
| 周四 | 人工智能接口自动化测试 | |
| 周五 | 人工智能接口自动化测试实战 | |
| 第十二周 | 周一 | 全流程实战 |
| 周二 | 全流程实战 | |
| 周三 | 全流程实战 | |
| 周四 | 全流程实战 | |
| 周五 | 全流程实战 |
Linux 与 Bash 编程¶
L1.Linux 文件处理命令¶
教学目标¶
- 熟悉 Linux 系统及常用命令。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Linux 系统与 Shell 环境准备 | Linux 系统介绍,多平台配置 shell 使用环境 |
| 知识点 | Linux目录结构介绍 | Linux 系统目录结构 |
| 知识点 | Linux常用命令之命令介绍 | Linux 命令介绍、Linux 命令格式 |
| 知识点 | Linux常用命令之帮助命令 | Linux 帮助命令使用、--help、man、info |
| 知识点 | Linux常用命令之基本命令 | Linux 基本命令、ls、cd、pwd、绝对路径与相对路径 |
| 知识点 | Linux常用命令之文件操作 | Linux 文件操作命令、mkdir、rmdir、touch、cp、mv、rm、ln |
| 知识点 | Linux常用命令之文件查看 | Linux 文件查看命令 cat、more、info、grep、管道 |
| 知识点 | Linux常用命令之文本编辑 | Linux 文本编辑命令 vim |
| 知识点 | Linux常用命令之打包压缩 | Linux 打包压缩命令、gzip、bzip2、tar |
| 知识点 | Linux常用命令之权限管理 | Linux 权限管理命令、权限介绍,权限分类,chmod、文字设定法,数字设定法 |
| 知识点 | Linux常用命令之网络管理 | Linux 网络管理命令、ifconfig、ip、netstat |
L2.Linux 性能与统计命令¶
教学目标¶
- 了解 Linux 系统中进程、线程、网络等核心概念。
- 熟悉 Linux 常用统计命令。
- 掌握 Linux 系统性能数据统计命令。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Linux 常用命令之性能统计 | cpu mem network io |
| 知识点 | Linux 常用统计命令 | sort uniq wc 等常用统计命令 |
| 知识点 | Linux 进程与线程 | 多进程、多线程、死锁、进程间通讯 |
L3.Linux 数据处理三剑客¶
教学目标¶
- 掌握 Linux 核心三剑客命令 grep awk sed 与数据处理分析能力。
- 掌握日志分析能力。
- 掌握 Linux 环境中配置 Java、Python、NodeJs、Android-SDK 等。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Linux 三剑客之 grep | 数据检索工具 |
| 知识点 | Linux 三剑客之 awk | 最强大的经典数据处理工具 |
| 知识点 | Linux 三剑客之 sed | 数据的流式编辑 |
| 知识点 | Linux 三剑客与管道使用 | grep、awk、sed 等 linux 经典数据处理技术 |
| 知识点 | 【实战】三剑客实战之 Nginx 日志分析实战 | 以真实的 nginx log 为例演练如何分析核心测试数据指标 |
| 知识点 | 【实战】三剑客实战之性能、网络统计实战 | 统计进程的资源占用数据 |
| 知识点 | linux 进阶命令 | curl 接口请求、jq json 数据处理 |
| 知识点 | Linux 环境配置 | 基础环境安装 java python nodejs android-sdk 等 |
L4.Bash 编程¶
教学目标¶
- 了解 Bash 编程语法。
- 掌握 shell 脚本编写。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Bash 编程语法 | 变量定义与常用流程控制语法 |
| 知识点 | Bash 脚本编写 | 编写可以直接执行的 shell 脚本 |
SQL 语法与数据库¶
L1.数据库常见查询语句¶
教学目标¶
- 了解数据库的基本概念。
- 掌握 MySQL 的安装和配置。
- 掌握数据库客户端工具的使用。
- 掌握 SQL 基础语法,可以熟练对库和表进行增删改查等操作。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 数据库的基本概念 | 数据库简介、使用场景、常用数据库简介 |
| 知识点 | MySql 的安装与配置 | 安装、卸载、环境变量配置、启动与关闭 MySql 服务、数据库的命令行操作 |
| 知识点 | 数据库客户端工具 | workbench 安装与简单使用 |
| 知识点 | MySql 介绍 | 目录结构、数据库管理系统、数据库表简介 |
| 知识点 | SQL 简介 | SQL 是什么、通用语法、分类 |
| 知识点 | DDL 数据库操作-创建 | 创建数据库 |
| 知识点 | DDL 数据库操作-查看 | 查看数据库 |
| 知识点 | DDL 数据库操作-修改 | 修改数据库 |
| 知识点 | DDL 数据库操作-删除 | 删除数据库 |
| 知识点 | DDL 数据库表操作简介 | MySql 的数据类型 |
| 知识点 | DDL 数据库表操作-创建 | 创建表操作 |
| 知识点 | DDL 数据库表操作-查看 | 查看表操作 |
| 知识点 | DDL 数据库表操作-修改 | 修改表操作 |
| 知识点 | DDL 数据库表操作-删除 | 删除表操作 |
| 知识点 | DML 表数据操作-插入 | 表数据插入 |
| 知识点 | DML 表数据操作-修改 | 表数据修改 |
| 知识点 | DML 表数据操作-删除 | 表数据删除 |
| 知识点 | DQL 表查询操作-简介 | 数据准备、简单查询 |
| 知识点 | DQL 表查询-条件查询 | 条件查询 |
| 知识点 | DQL 表查询操作-排序 | 数据准备、排序操作 |
| 知识点 | DQL 表查询操作-聚合函数 | 数据准备、聚合函数 |
| 知识点 | DQL 表查询操作-分组 | 数据准备、分组操作 |
| 知识点 | DQL 表查询操作-limit 关键字 | 数据准备、limit |
| 知识点 | SQL 约束-主键约束 | 主键约束 |
| 知识点 | SQL 约束-非空约束 | 非空约束 |
| 知识点 | SQL 约束-唯一约束 | 唯一约束 |
| 知识点 | SQL 约束-默认值 | 默认值 |
L2.多表连接与子查询¶
教学目标¶
- 了解 SQL 的约束规则。
- 掌握多表查询中的表连接查询方式。
- 掌握多表查询中的子查询方式。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 多表简介 | 多表介绍、使用场景与优点 |
| 知识点 | SQL 约束-外键约束 | 外键约束 |
| 知识点 | 多表关系简介 | 一对多、多对多、一对一 |
| 知识点 | 多表查询 | 数据准备、笛卡尔积简介 |
| 知识点 | 多表查询-内连接查询 | inner join |
| 知识点 | 多表查询-外连接查询 | left join、 right join |
| 知识点 | 子查询简介 | 简介 |
| 知识点 | 【实战】子查询实战 | 子查询实战演练 |
L3.非关系型数据库¶
教学目标¶
- 了解 MySQL 的进阶知识。
- 了解常用关系型与非关系型数据库的区别。
- 掌握非关系型数据库 redis、mongodb 与图数据库 neo4j 基本用法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 数据库进阶 | sql 进阶与 mysql 进阶管理 |
| 知识点 | redis 内存数据库 | 性能最快的内存数据存储,基础使用 |
| 知识点 | mongodb nosql 数据库 | 经典的 nosql 数据库介绍与使用 |
| 知识点 | neo4j 图数据库 | 图数据的应用介绍 |
Git 代码管理¶
L1.Git 环境配置与常用命令¶
教学目标¶
- 掌握 Git 安装和配置。
- 掌握 Git 常用命令。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Git 环境配置 | 安装 配置 |
| 知识点 | Git 工作流程 | 介绍 Git 工作流程 |
| 知识点 | Git 常用命令 | add commit pull push |
L2.Git 远程仓库使用¶
教学目标¶
- 掌握 Github、Gitlab、Gitee 等远程仓库的使用方式。
- 掌握 IDE 客户端集成 Git 并使用 Git 管理代码的方式。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Gitlab 实战 | Gitlab 项目开发实战 |
| 知识点 | Github 实战 | Github 项目开发实战 |
| 知识点 | Gitee 实战 | Gitee 项目开发实战 |
| 知识点 | Git 客户端与 IDE 实战 | 使用 IDE 集成 Git 功能完成日常开发 |
L3.Git 分支管理与冲突解决¶
教学目标¶
- 掌握 Git 分支管理方式。
- 掌握 Git 分支合并和冲突解决方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Git log 分析与检索 | 对提交内容进行分析、检索 |
| 知识点 | 分支管理策略 | 分支开发模式、主干开发模式 |
| 知识点 | Git 合并与冲突 | merge rebase |
Python 编程语言¶
L1.Python 语法与数据结构¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 录播 | 初识Python | Python 发展历史,Python 特点,应用领域 |
| 录播 | 安装Python(Windows) | 下载,安装步骤,检验安装效果 |
| 录播 | 安装Python(macOS) | 下载,安装步骤,检验安装效果 |
| 录播 | 安装PyCharm | 下载,安装 |
| 录播 | 第一个Python程序 | 使用 print()输出 |
| 录播 | PyCharm常用快捷键 | 常用快捷键,官方手册 |
| 录播 | 编码规范 | 缩进,注释,命名规范 |
| 录播 | 输入和输出 | 输入函数,输出函数 |
| 录播 | 函数定义与调用 | 什么是函数,内置函数,函数定义,函数调用 |
| 录播 | 标识符 | 标识符概念,命名规范 |
| 录播 | 关键字 | 什么是关键字,查看关键字 |
| 录播 | 变量 | 变量概念,变量的定义,变量的使用,变量的地址 |
| 录播 | 数据类型 | 标准数据类型,类型查看 |
| 录播 | 数字类型 | 整数,浮点数,复数 |
| 录播 | 布尔类型 | 条件判断,状态标记,假值状态 |
| 录播 | 类型转换 | 自动转换,强制转换 |
| 录播 | 运算符 | 什么是运算符 |
| 录播 | 算术运算符 | +,-,,/,%,//,* |
| 录播 | 赋值运算符 | =,+=,-=,*=,/= |
| 录播 | 关系运算符 | ==,!=,>,<=,<,>= |
| 录播 | 逻辑运算符 | and,or,not,短路特性 |
| 录播 | 成员运算符 | in,not in |
| 录播 | 身份运算符 | is, is not , is 与 == 的区别 |
| 录播 | 三目运算符 | true_expr if expression else false_expr |
| 录播 | 运算符优先级 | 规则,括号 |
| 录播 | 字符串 | 什么是字符串,字符串定义,转义字符,字符串下标 |
| 录播 | 字符串操作 | 统计查找替换类,字符串判断类,字符串转换类,字符串对齐类,字符串去除空白类,字符串分割类,字符串连接类,编码解码类,切片操作 |
| 实战 | 字符串综合实战 | 字符串操作 |
| 录播 | 字符串格式化 | 什么是字符串格式化,format()方法,f-string字符串 |
| 录播 | 元组 | 什么是元组,元组的定义,元组中元素的引用,元组的切片操作,元组的特点,元组的应用场景,元组的常用方法 |
| 录播 | 列表 | 什么是列表,列表的特点,列表的定义,列表中元素的引用,列表中元素的修改,列表的切片操作,列表的用途 |
| 录播 | 列表操作 | 获取列表元素个数,统计查找操作,增加元素,删除元素,列表排序 |
| 录播 | 元组和列表的区别 | 相同点,不同点 ,内存占用,总结对比 |
| 录播 | 字典 | 字典的定义,字典的创建,字典数据访问 ,字典元素添加与修改 ,字典元素的删除 ,字典的有序性(Python3.7+),字典的应用场景 |
| 录播 | 字典操作 | 字典数据获取类操作,字典添加更新类操作,字典删除类操作 |
| 录播 | 集合 | 什么是集合,集合的创建, |
| 录播 | 集合操作 | 添加操作,删除操作 ,集合数据操作 |
| 录播 | 深拷贝与浅拷贝 | 什么是拷贝,浅拷贝,深拷贝 |
| 录播 | 分支语句-if | 什么是分支语句,if 条件判断,if... else 判断语句 ,if... elif... else 多重条件,分支嵌套 |
| 实战 | 回文数(切片实现) | 运算符,分支语句-if,字符串操作 |
| 实战 | 成绩判断 | 类型转换,分支语句-if |
| 实战 | 计算器 | 类型转换,运算符,分支语句-if |
| 实战 | 模拟乘车过程 | 分支语句-if |
| 录播 | 匹配语句-match | 匹配语句match介绍,基本语法结构,组合多个匹配值,匹配模式绑定变量 |
| 录播 | 循环语句-while | 什么是循环,程序中的循环,循环的作用,循环的构成要素 ,什么是 while 循环,while 循环的语法,while 循环实战 |
| 录播 | 循环语句-for-in | for-in 循环的语法, 遍历可迭代对象 |
| 实战 | 回文数(循环实现) | 类型转换,运算符,循环语句-for-in |
| 录播 | 数字序列 | range函数,range函数的基本语法 ,随机数 |
| 实战 | 猜数字 | 循环语句-while,循环语句-for-in |
| 实战 | 猜拳游戏 | 分支语句-if,运算符,列表 |
| 实战 | 打印图案 | 循环语句-for-in,循环嵌套 |
| 实战 | 词频统计 | 列表,列表操作,字符串操作,字典,字典操作,for-in循环,分支语句-if |
| 实战 | 水仙花数 | 运算符,循环语句-for-in,分支语句-if,函数返回值与参数处理 |
| 录播 | 循环嵌套 | 循环嵌套特征 |
| 实战 | 数字组合 | 分支语句-if,循环语句-for-in,循环嵌套 |
| 录播 | 循环跳转 | 死循环,break 语句, continue 语句,loop-else |
| 录播 | 推导式 | 元组推导式,列表推导式, 字典推导式, 集合推导式 |
| 录播 | 函数返回值与参数处理 | 函数返回值,参数传递,位置参数,关键字参数,默认值参数 ,可变参数,混合参数 |
| 录播 | 变量作用域 | 局部变量,全局变量 ,全局变量和局部变量的优缺点 |
| 实战 | 素数 | 运算符,循环语句-for-in,分支语句-if,函数返回值与参数处理 |
| 录播 | 匿名函数 | lambda 表达式, 使用场景 ,Sorted函数实现原理 |
| 录播 | 递归算法 | 递归的基本原则 ,递归使用举例-阶乘 |
| 实战 | 阶乘 | 分支语句-if,递归算法,函数返回值与参数处理 |
| 实战 | 斐波那契数列 | 分支语句-if,递归算法,函数返回值与参数处理 |
L2.Python 面向对象编程¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 录播 | 闭包与装饰器 | 函数引用, 闭包, 装饰器 |
| 实战 | 计数器函数 | 相关知识点:闭包与装饰器 |
| 录播 | 文件操作 | 文件打开,文件关闭,文件读取,文件写入 |
| 实战 | 读写文件 | 相关知识点:文件操作 |
| 录播 | 错误分析与调试 | 错误分析,print调试,debug调试 |
| 录播 | 异常处理 | 异常介绍,捕捉异常,异常处理 |
| 实战 | 计算器 | 相关知识点:异常处理, 分支语句-if, 函数返回值与参数处理 |
| 录播 | 面向对象概念 | 面向过程编程,面向对象编程,面向对象VS面向过程 |
| 录播 | 类和对象 | 概念,定义,class ,实例对象 |
| 录播 | 实例属性 | 动态绑定定义,访问 |
| 录播 | 构造方法 | __init__(), self, __str__() |
| 录播 | 实例方法 | 实例方法定义, 实例方法调用 |
| 录播 | 类属性 | 定义,类对象,访问 |
| 录播 | 类方法 | 定义,访问 |
| 录播 | 静态方法 | 定义,访问 |
| 实战 | 矩形面积和周长 | 相关知识点:静态方法, 函数返回值与参数处理 |
| 录播 | 封装 | 访问控制权限, 公有属性,保护属性, 私有属性,_和__前缀 |
| 录播 | 计算属性 | 属性访问器和修改器,property装饰器实现计算属性,计算属性的优势 |
| 录播 | 继承 | 继承的概念,单继承,方法重写,super函数的使用,多继承 |
| 录播 | 多态 | 概念,表现,鸭子类型,类型检查 |
| 录播 | 类型注解 | 类型注解基本使用,基本类型注解,容器类型注解, Union 类型注解, Sequence 类型注解, Optional 类型注解, Callable 类型注解,自定义类作为类型注解 |
| 实战 | 动物园 | 相关知识点:实例方法,实例属性,类属性,构造方法,封装,继承,多态 |
| 实战 | 字符串整理 | 相关知识点: 循环语句,分支语句-if, 函数返回值与参数处理 |
| 实战 | 字符串压缩 | 相关知识点: 循环语句,分支语句-if, 函数返回值与参数处理 |
| 实战 | 击鼓传花 | 相关知识点: 分支语句-if, 函数返回值与参数处理 |
| 实战 | 心跳挑战 | 相关知识点: 循环语句,分支语句-if, 函数返回值与参数处理 |
L3.Python 常用模块¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 录播 | 模块 | 模块的导入,内建模块,自定义模块,第三方模块,dir() 函数 |
| 录播 | 包 | 包的概念,package 用途,package 导入,init.py |
| 录播 | math模块 | math模块常量,math模块方法 |
| 录播 | random模块 | 常用方法 |
| 录播 | sys模块 | sys常用属性,sys常用方法 |
| 录播 | os模块 | 路径操作,目录和文件操作,其它操作 |
| 录播 | datetime模块 | 应用场景,日期时间处理函数 |
| 录播 | 正则表达式 | 正则表达式介绍, 常用正则符号,常用正则方法 |
| 录播 | JSON模块 | JSON 概念,Python 与 JSON 数据类型对应,JSON 序列化与反序列化,JSON 文件的写入和读取 |
| 录播 | 日志模块 | 日志四大组件,日志等级,日志配置 |
| 录播 | 虚拟环境管理 | 虚拟环境介绍,虚拟环境配置安装 |
| 录播 | pip工具使用 | pip 常用操作, pip 指定安装源 |
L4.Python 高级编程¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 录播 | 多任务编程 | 多任务介绍,多任务编程 |
| 录播 | 多任务进程编程 | 进程实现多任务 |
| 录播 | 多任务线程编程 | 线程实现多任务 |
| 录播 | 多任务协程编程 | 协程实现多任务 |
| 录播 | 网络编程 | IP 地址与端口,通信协议,Socket 编程,Socket 开发流程,多任务开服务端 |
| 录播 | 数据库操作 | 数据库连接创建,游标对象使用,查询操作,插入操作, 更新操作,删除操作 |
| 录播 | yaml 文件处理 | 什么是 YAML 文件,为什么要使用 YAML 文件,YAML 的基本语法规则,YAML 的数据结构,YAML 文件处理 |
| 录播 | dataclass | dataclass 基本使用,数据类嵌套,对象初始化后禁止改变属性值,field 的使用 |
| 录播 | Pydantic | Pydantic 基本操作,Pydantic 高级操作 ,Field 对象,数据转换 |
| 录播 | Pytest 测试框架 | Pytest 简介,环境安装与配置,命名规则,断言,测试装置,数据参数化,使用 YAML 文件进行数据驱动测试 |
Pytest 测试框架¶
L1.Pytest 用例编写¶
教学目标¶
- 熟悉 Pytest 框架与常用操作
- 掌握 Pytest 安装与配置
- 掌握 Pytest 编写自动化测试用例规则
- 掌握 Pytest 编写用例的结构与断言
- 掌握 Pytest 自动测试实战能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Pytest 简介、安装与准备 | Pytest 简介、Pytest 环境安装,运行第一个测试脚本 |
| 知识点 | Pytest 命名规则 | 模块命名、类命名、方法命名 |
| 知识点 | pycharm 配置与界面化运行 | 配置与界面化运行 |
| 知识点 | Pytest 测试用例结构 | 测试用例名字、步骤、断言 |
| 知识点 | Pytest 测试用例断言 | 常用断言类型 assert |
| 知识点 | Pytest 测试框架结构 | 模块级、函数级、类级、方法级、测试用例之间的顺序 |
L2.Pytest 参数化与调度执行¶
教学目标¶
- 熟悉 Pytest 参数化与基本装饰器用法
- 掌握 Pytest 测试用例调度与运行
- 掌握 Pytest 命令行执行与命令行常用参数
- 掌握 Pytest 异常处理
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Pytest 参数化用例 | 单参数、多参数、用例重命名 |
| 知识点 | Pytest 标记测试用例 | 添加用例标签 |
| 知识点 | Pytest 设置跳过、预期失败用例 | 用例跳过、skip、skipif、xfail |
| 知识点 | Pytest 运行用例 | 运行多条用例/文件/包、运行指定测试用例、执行结果分析 |
| 知识点 | Pytest 测试用例调度与运行 | 测试用例的收集、选取与运行 |
| 知识点 | Pytest 命令行常用参数 | 常用参数说明 |
| 知识点 | Python 执行 Pytest | 利用 Python 代码执行 Pytest 用例 |
| 知识点 | Pytest 异常处理 | assert,python try...except,异常断言 |
L3.Pytest 生命周期与数据驱动¶
教学目标¶
- 熟悉 Pytest 结合数据驱动用法
- 掌握 Pytest 测试用例生命周期管理
- 掌握 Pytest fixture 实现参数化
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Pytest 结合数据驱动-yaml | 利用外部数据源 YAML 管理测试 |
| 知识点 | Pytest 结合数据驱动-excel | 利用外部数据源 EXCEL 管理测试 |
| 知识点 | Pytest 结合数据驱动-csv | 利用外部数据源 CSV 管理测试 |
| 知识点 | Pytest 结合数据驱动-json | 利用外部数据源 JSON 管理测试 |
| 知识点 | Pytest 测试用例生命周期管理(一) | fixture 作为参数使用 |
| 知识点 | Pytest 测试用例生命周期管理(二) | fixture 作用范围 |
| 知识点 | Pytest 测试用例生命周期管理(三) | yield 用法 |
| 知识点 | Pytest 测试用例生命周期管理-自动注册 | conftest.py 配置文件的使用 |
| 知识点 | Pytest 测试用例生命周期管理-自动生效 | autouse 参数的用法 |
| 知识点 | Pytest fixture 实现参数化 | 通过 fixture 实现参数化 |
L4.Pytest 第三方插件与 Hook 函数¶
教学目标¶
- 熟悉 Pytest 配置文件
- 掌握 Pytest 第三方插件
- 掌握 Pytest hook 函数以及插件开发
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Pytest 配置文件【进阶】 | Pytest.ini 配置文件、添加默认参数 |
| 知识点 | Pytest 插件 【进阶】 | Pytest 插件的种类 |
| 知识点 | Pytest 测试用例执行顺序自定义 Pytest-ordering【进阶】 | Pytest-ordering |
| 知识点 | Pytest 测试用例并行运行与分布式运行【进阶】 | Pytest-xdist |
| 知识点 | Pytest 内置插件 hook 体系【进阶】 | 内置插件(hook 函数) |
| 知识点 | Pytest 插件开发【进阶】 | Pytest 插件开发、参数详解、打包发布 |
Allure 测试报告¶
L1.Allure2 安装和运行¶
教学目标¶
- 掌握 Allure 安装
- 掌握 Allure 运行方式
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Allure2 安装 | Allure2 与相关依赖安装 |
| 知识点 | Allure2 运行方式 | Allure2 运行方式 |
L2.Allure2 用例描述¶
教学目标¶
- 掌握 Allure2 添加用例分类、用例描述的能力
- 掌握测试报告定制能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Allure2 报告生成 | Allure2 生成测试报告 |
| 知识点 | Allure2 报告中添加用例标题 | 测试报告添加用例的标题 |
| 知识点 | Allure2 报告中添加用例步骤 | 添加测试测试步骤,通过调用方法实现、通过装饰器实现,以及结合参数化 |
| 知识点 | Allure2 报告中添加用例链接 | 测试报告添加超链接 |
| 知识点 | Allure2 报告中添加用例分类 | 添加测试类别划分 |
| 知识点 | Allure2 报告中添加用例描述 | 测试报告添加用例的描述 |
| 知识点 | Allure2 报告中添加用例优先级 | 测试报告添加用例的优先级 |
| 知识点 | Allure2 报告中添加用例支持 tags 标签 | 测试报告中添加用例支持 tags 标签,例如 xfail、skipif 等 |
| 知识点 | Allure2 报告中支持记录失败重试功能 | 测试报告中支持第三方插件 reruns=num 参数,并记录用例失败的次数以及原因 |
L3.Allure2 报告添加附件¶
教学目标¶
- 掌握 Allure2 添加用例失败截图、用例日志、html 块、视频的能力
- 掌握测试报告定制能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Allure2 报告中添加附件-图片 | 测试报告添加截图 |
| 知识点 | Allure2 报告中添加附件-日志 | 测试报告添加日志 |
| 知识点 | Allure2 报告中添加附件-html | 测试报告添加 html 块 |
| 知识点 | Allure2 报告中添加附件-视频 | 测试报告添加视频 |
L4.Allure2 报告定制¶
教学目标¶
- 掌握测试报告定制能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Allure2 报告定制 | 定制测试报告 Logo,样式等 |
质量管理与测试开发架构体系¶
L1.软件测试概念¶
教学目标¶
- 掌握软件测试的基础概念
- 了解测试行业经典的测试方法与经典书籍
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 软件测试基础概念 | 软件测试的原则、对象、作用,缺陷的介绍 |
| 知识点 | 软件开发流程 | SCRUM、XP、持续集成/持续交付/DevOps |
| 知识点 | 测试流程体系 | 传统测试流程、测试左移、测试右移 |
| 知识点 | 测试技术体系 | 分层测试体系、单元测试、UI 测试、接口测试、白盒测试 |
| 知识点 | 常用测试平台 | 用例管理平台、Bug 管理平台、代码管理平台、持续集成平台 |
| 知识点 | 流程管理平台 | 常用流程管理平台介绍,jira、redmine |
| 知识点 | 项目管理与跨部门沟通协作 | 与产品经理、研发、上下游测试的配合 |
| 知识点 | 测试经典书籍拆分讲解 | 全程软件测试、探索式测试、持续交付、Google 测试之道、不测的秘密等 |
L2.测试体系与测试方案设计¶
教学目标¶
- 掌握测试方案设计方法。
- 掌握需求理解方法。
- 掌握测试环境搭建方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 被测系统架构与数据流分析 | 网关、微服务、关系型/非关系型数据库、消息管道、缓存系统、大数据系统、AI 人工智能系统 |
| 知识点 | 测试体系与测试方案设计 | 测试方案设计 自动化测试 |
| 知识点 | 被测需求理解 | 需求分析、需求理解、产品设计工具与需求建模工具 |
| 知识点 | 常用测试策略与测试手段 | 分层测试基础、兼容性测试、稳定性测试、可靠性测试、探索式测试 |
| 知识点 | bug 定位方法 | 常用的 bug 定位技术 |
| 知识点 | 分层测试策略 | 金字塔 橄榄球型 云测试服务 微服务测试模型 |
| 知识点 | 自动化测试策略 | |
| 知识点 | 测试环境搭建 | 环境搭建常用技术、Linux、Shell、容器技术 |
L3.测试开发与 DevOps 体系介绍¶
教学目标¶
- 了解持续交付与 DevOps 体系。
- 了解测试框架体系。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 测试框架体系 TDD DDT BDD ATDD 介绍 | 常见测试框架类型 TDD DDT BDD ATDD |
| 知识点 | 持续交付与 DevOps 体系 | DevOps DevSecOps TestOps DevQA ChatOps 概念介绍 |
| 知识点 | 测试左移体系 | 测试左移实践方法与案例分享 |
| 知识点 | 测试右移体系 | 测试右移实践方法与案例分享 |
| 知识点 | 精准测试体系 | 精准测试实践方法与案例分享 |
| 知识点 | 测试开发体系讲解 | 测试开发技术 测试开发理论 项目演示 阿里、腾讯 测试体系讲解 |
L4.质量管理体系案例¶
教学目标¶
- 了解如何构建质量体系。
知识点¶
| 形式 | 章节 | 资历 | 描述 |
|---|---|---|---|
| 知识点 | 互联网巨头测试经理分享-质量保障体系系列课 | 12年+经验分享 | 为什么需要质量体系 什么是质量保障体系 如何打造质量体系 新技术革命下的质量体系 Q&A |
| 知识点 | 华为测试部长分享-华为IPD实践揭秘:互联网大厂的质量体系0-1构建之路 | 10年+经验分享 | 研发模式的剖析 华为IPD深度解读:从背景到职责划分 实战解析:华为移动产品的IPD开发流程 |
| 知识点 | 大厂质量保障体系案例分享 | 9年+经验分享 | 质量保障体系的介绍 团队建设 质量文化 质量流程规范 质量指标可视化 质量保障能力成熟度模型 质量保障框架的介绍 |
| 知识点 | 京东金融测试体系介绍 | 10年+经验分享 | 质量体系建设 能力建设 质量文化 安全架构体系 安全测试实施策略 交付类项目测试流程 敏捷研发流程 测试实施关键能力 测试系统各环节需要解决的问题 工具体系建设 |
| 知识点 | 大厂测试开发专家-测试质量体系建设实践方法 | 10年+经验分享 | 版本控制方面优秀实践 测试过程优秀实践 团队效率提升方面优秀实践 线上问题处理方面优秀实践 |
测试用例设计¶
L1.测试用例设计方法¶
教学目标¶
- 掌握常见的测试用例设计方法。
- 掌握测试用例的相关概念。
- 掌握测试用例的设计与编写。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 测试用例价值与体系 | 测试用例价值与体系 |
| 知识点 | 黑盒测试方法论-等价类 | 等价类测试方法论 |
| 知识点 | 黑盒测试方法论-边界值 | 边界值测试方法论 |
| 知识点 | 黑盒测试方法论-判定表 | 判定表测试方法论 |
| 知识点 | 黑盒测试方法论-场景法 | 场景法测试方法论 |
| 知识点 | 测试用例基础概念 | 测试用例概念 测试用例的组成 测试用例的优先级 测试用例设计工具 测试用例的作用 |
| 知识点 | 测试用例设计与评审 | 测试用例编写步骤 测试用例评审 |
| 知识点 | 面试测试测试用例设计 | 面试测试测试用例设计思路 |
L2.白盒测试方法介绍¶
教学目标¶
- 了解白盒测试设计方法。
- 了解黑盒测试前沿方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 黑盒测试方法论-因果图 | 因果图测试方法论 |
| 知识点 | 黑盒测试方法论-正交法 | 正交法测试方法论 |
| 知识点 | 黑盒测试方法论-基于模型的测试 | 基于模型的测试应用 graphwalker |
| 知识点 | 白盒测试方法论 | 代码覆盖、流程覆盖、精准化测试 |
测试流程¶
L1.测试流程管理¶
教学目标¶
- 掌握名企经典的项目开发流程与测试流程。
- 掌握测试计划与测试总结报告的编写方法。
- 掌握使用工具管理测试用例与 Bug 的方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 测试流程价值与体系 | 测试计划模版,测试计划编写 |
| 知识点 | 业务架构分析思路 | 业务知识梳理 |
| 知识点 | 测试计划 | 测试计划模版,测试计划编写 |
| 知识点 | Bug 基本概念 | Bug 定义 Bug 判定标准 Bug 严重程度 Bug 优先级 |
| 知识点 | Bug 处理流程 | Bug 生命周期 Bug 报告 |
| 知识点 | 测试流程管理 JIRA 系统-测试用例管理 | 测试用例管理 |
| 知识点 | 测试流程管理 JIRA 系统-Bug管理 | Bug 管理 |
| 知识点 | 测试总结 | 测试报告模版,测试报告编写 |
L2.测试流程搭建¶
教学目标¶
- 掌握业务架构分析的方法。
- 掌握使用工具进行测试用例与 Bug 流程定制的方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 业务架构分析工具 plantuml | 时序图 架构图 活动图 思维导图 |
| 知识点 | 测试流程管理 Redmine 系统-测试用例管理 | 测试用例管理 |
| 知识点 | 测试流程管理 Redmine 系统-Bug管理 | Bug 管理 |
| 知识点 | 测试流程管理禅道系统-测试用例管理 | 测试用例管理 |
| 知识点 | 测试流程管理禅道系统-Bug管理 | Bug 管理 |
| 知识点 | 测试流程管理 JIRA 系统-测试流程定制 | 测试流程定制 |
| 知识点 | 测试流程管理 JIRA 系统-Bug管理流程定制 | Bug管理流程定制 |
| 知识点 | 测试流程管理 Redmine 系统-测试流程定制 | 测试流程定制 |
| 知识点 | 测试流程管理 Redmine 系统-Bug管理流程定制 | Bug管理流程定制 |
用户端 Web 功能测试¶
L1.Web 端通用测试方法¶
教学目标¶
- 掌握 HTML、JS、CSS 基础知识以及常见相关 Bug。
- 掌握网页端的通用测试点。
- 掌握网页端的测试方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Web 测试体系 | Web 测试学习路径 |
| 知识点 | Web 基础知识 | Web 概念,Web 架构,浏览器工作原理,Web 服务器 |
| 知识点 | HTML 讲解 | HTML 结构、HTML 修改,页面控件结构 |
| 知识点 | JavaScript 讲解 | 控件事件处理流程、JS 代码分析,使用 JS 分析页面 |
| 知识点 | CSS 讲解 | CSS 基本属性介绍、控件属性修改 |
| 知识点 | Web 项目测试流程 | Web 项目测试流程介绍 |
| 知识点 | Web 测试设计思路 | Web 测试思路总结 |
| 知识点 | Web 端常见 Bug 解析 | JS 报错、功能性问题、性能问题、兼容性问题解析 |
L2.Web 端测试工具使用¶
教学目标¶
- 掌握 Web 兼容性测试思路。
- 掌握常用浏览器的开发者工具。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 浏览器开发者工具 | 浏览器开发者工具使用 |
| 知识点 | Web 兼容测试策略 | Web 兼容测试 |
用户端 App 功能测试¶
L1.App 通用测试方法¶
教学目标¶
- 掌握 App 项目测试流程。
- 掌握 App 测试需要注意的测试点。
- 掌握 App 测试中的常见的 Bug。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | App 测试体系 | App 测试学习路径 |
| 知识点 | App 项目测试流程 | App 项目测试流程介绍 |
| 知识点 | App 结构讲解 | App 包结构解读 |
| 知识点 | App 测试设计思路 | App 测试思路总结 |
| 知识点 | App 常见 Bug 解析 | 功能 Bug、崩溃 Bug、性能 Bug |
| 知识点 | 常用模拟器使用 | Genymotion、网易 MuMu、Android/iOS 官方模拟器 |
| 知识点 | Android 开发者选项 | Android 开发者选项介绍 |
L2.Adb 常用命令¶
教学目标¶
- 掌握 App 测试必学技能 adb 命令。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | adb 命令介绍 | adb 的使用场景、adb 的常用命令简介 |
| 知识点 | adb 环境搭建与配置 | Java、SDK、adb 环境安装与配置 |
| 知识点 | adb 与设备交互 | adb 连接手机设备、查看设备状态 |
| 知识点 | adb 安装卸载应用 | adb 安装、卸载命令 |
| 知识点 | adb 命令启动页面 | adb 启动页面命令 |
| 知识点 | adb 命令清缓存 | adb 清缓存命令 |
| 知识点 | adb 文件传输 | 通过 adb 实现手机与电脑之间的文件传输 |
| 知识点 | adb 日志操作 | adb 日志操作命令 |
L3.App 压力测试与性能分析¶
教学目标¶
- 掌握 App 测试必学技能 adb 命令。
- 掌握 Android 健壮性测试工具 monkey。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | adb 模拟按键操作 | 通过 adb shell 实现输入、点击等操作 |
| 知识点 | adb 性能分析 | 通过 adb 命令获取性能数据信息 |
| 知识点 | app 压力测试 | monkey 命令 |
用户端 Web 自动化测试¶
L1.用例录制与编写¶
教学目标¶
- 熟悉 Selenium 框架与常用操作
- 掌握 Web 自动化测试用例录制能力
- 掌握 Web 自动化测试用例编写能力
- 掌握 Web 自动测试实战能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Web 自动化测试价值与体系 | 价值体系 技术选型 学习路线 |
| 知识点 | Selenium 简介 | selenium 介绍 |
| 知识点 | 环境安装与使用 | selenium、 chromedriver、 firefox geckodriver |
| 知识点 | Selenium 原理分析 | 分析 Selenium 底层原理 |
| 知识点 | 自动化用例录制 | selenium IDE、录制、回放、基本使用 |
| 知识点 | 自动化测试用例结构分析 | 录制代码解析,代码结构优化 |
| 知识点 | web 浏览器控制 | 打开网页、刷新、回退、最大化、最小化 |
| 知识点 | 常见控件定位方法 | id name css xpath link 定位 |
| 知识点 | 强制等待与隐式等待 | 介绍 selenium 经典的三种等待方式 |
| 知识点 | 常见控件交互方法 | 点击,输入,清空,获取元素文本、尺寸等属性信息 |
| 知识点 | 自动化测试定位策略 | Web 自动化测试不同场景的定位方式的汇总 |
| 知识点 | 【实战】测试人论坛搜索功能自动化测试 | 用例设计、用例编写、断言 |
| 知识点 | Playwright 测试框架介绍 | Playwright 自动化测试框架 |
| 知识点 | 环境安装与使用 - Playwright | Playwright 安装与配置 |
| 知识点 | 自动化用例录制 - Playwright | Playwright、录制、回放、基本使用 |
| 知识点 | 【实战】测试人论坛搜索功能自动化测试 - Playwright | 用例设计、用例编写、断言 |
| 知识点 | cypress 测试框架介绍 | web 自动化测试框架 cypress |
L2.元素定位与显式等待¶
教学目标¶
- 掌握高级定位 css、xpath 的使用方法
- 掌握显式等待与隐式等待知识点
- 掌握测试报告定制能力
- 掌握复杂产品的 web 自动化测试实战能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 高级定位-css | css 使用场景、语法 |
| 知识点 | 高级定位-xpath | xpath 使用场景、语法 |
| 知识点 | 显式等待高级使用 | 显式等待原理与使用 |
| 知识点 | 网页 frame 与多窗口处理 | 多窗口,多 frame 下的窗口识别与切换 |
| 知识点 | 高级控件交互方法 | 鼠标、键盘的操作事件 |
| 知识点 | 文件上传弹框处理 | 文件上传的自动化与弹框处理机制 |
| 知识点 | 自动化关键数据记录 | 行为日志、截图,page source |
| 知识点 | 【实战】电子商务产品实战 | 用例设计、日志封装、测试报告 |
L3.验证码处理与 PO 设计模式¶
教学目标¶
- 掌握绕过扫码、滑块、短信校验等认证方法的自动化测试方案
- 掌握 Page Object 设计模式,实现测试用例的良好分层
- 掌握测试用例的流程编排
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | page object 设计模式 | page object 模式的发展历史介绍、六大设计原则 |
| 知识点 | 异常自动截图 | 测试用例失败时自动截图 |
| 知识点 | 测试用例流程设计 | 测试装置的应用,套件级别的初始化与清理、用例级别的初始化与清理 |
| 知识点 | 【实战】电子商务产品实战进阶 | page object 设计模式应用、BasePage 封装、基于 page object 模式的测试用例编写 |
| 知识点 | 【实战】电子商务产品实战进阶 - Playwright | page object 设计模式应用、BasePage 封装、基于 page object 模式的测试用例编写 |
L4.多浏览器自动化测试方案¶
教学目标¶
- 掌握多浏览器自动化测试方案
- 掌握自动化测试中常用的 javascript 脚本
- 掌握 selenium options 无头浏览器等常用配置
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 浏览器复用 | 利用远程调试技术实现自动化登录 |
| 知识点 | Cookie 复用 | 利用 cookie 复用实现自动化登录 |
| 知识点 | 执行 javascript 脚本 | 使用 selenium 直接在当前页面中进行 js 交互 |
| 知识点 | headless 无头浏览器使用 | selenium options 无头浏览器等常用配置 |
| 知识点 | capability 配置参数解析 | capability 用法 ,firefox chrome 等浏览器的专属 capability |
L5.多浏览器处理与 Web 自动化用例生成¶
教学目标¶
- 了解 Web 自动化测试多浏览器处理
- 了解 Web 自动化用例生成
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | selenium 多浏览器处理 | chrome、firefox 等浏览器的自动化支持 |
| 知识点 | Web 自动化用例生成 | 自动化分析网页并自动生成自动化测试用例 |
| 知识点 | Web 自动化智能体 | 利用人工智能实现 web 自动化测试 |
用户端 App 自动化测试¶
L1.用例录制与编写¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | App 自动化测试的价值与体系 | 价值体系 技术选型 学习路线 |
| 知识点 | Appium 的基本介绍 | appium 基本介绍,appium 基本架构、appium 1.0与2.0的区别 |
| 知识点 | Appium 环境安装与使用 | Java 环境、SDK 环境、appium Desktop 安装、appium server 2.x 、appium inspector、appium client |
| 知识点 | Appium 原理解析 | appium 原理解析、 appium 通信过程 |
| 知识点 | 自动化用例录制 | appium Desktop 用法,录制、回放、基本使用 |
| 知识点 | 自动化测试用例结构分析 | 录制代码解析,代码结构优化 |
| 知识点 | capability 配置参数解析 | capability 用法 ,android ios 专属 capability |
| 知识点 | app 自动化控制 | 数据清理 启动 关闭 |
| 知识点 | 常见控件定位方法 | id,aid,xpath css 原生定位 |
| 知识点 | 强制等待与隐式等待 | time.sleep() 与 implicitly_wait() |
| 知识点 | 常见控件交互方法 | 点击,输入,清空,获取元素文本、尺寸等属性信息 |
| 知识点 | 滑动交互方法 | 滑动交互 |
| 知识点 | 自动化测试定位策略 | Web、App 自动化测试不同场景的定位方式的汇总 |
| 知识点 | 【实战】雪球 app 搜索功能点自动化测试实战 | 用例设计,用例编写,断言 |
L2.高级定位与 PO 设计模式¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | capability 进阶用法 | 测试策略,性能相关 |
| 知识点 | 元素定位工具 | uiautomatorviewer、weditor、appium inspector |
| 知识点 | 高级定位技巧-xpath 定位 | dom 结构解读、xpath 层级定位技巧 |
| 知识点 | 高级定位技巧-css 定位与原生定位 | css selector 定位、原生定位 |
| 知识点 | 显式等待高级使用 | 显式等待原理与使用 |
| 知识点 | 高级控件交互方法 | TouchAction 触屏操作、点按,双击,滑动,手势解锁操作等 |
| 知识点 | 【实战】雪球财经 app 股票详情功能点自动化测试实战 | 用例设计,hamcrest 断言,page object 封装 |
L3.webview 与微信小程序测试¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 特殊控件 toast 识别 | 通过 xpath 定位 toast |
| 知识点 | 自动化关键数据记录 | 行为日志、截图,page source |
| 知识点 | app 弹窗异常处理 | app 弹窗异常处理 |
| 知识点 | 自动化测试架构优化 | 需求与价值、项目结构优化、框架封装(异常处理、日志记录、报告生成、数据驱动) |
| 知识点 | 【实战】基于 page object 模式的测试框架优化实战 | 异常处理、日志记录、报告生成、参数化与数据驱动 |
| 知识点 | android webview 技术原理 | webview 技术原理分析 |
| 知识点 | android webview 架构与分析 | 使用开发者工具分析 webview 手机浏览器 小程序 |
| 知识点 | webview 自动化测试 | webview 页面调试工具介绍,webview 页面调试技巧,webview 控件定位技巧 |
| 知识点 | 微信小程序自动化测试 | 微信小程序调试工具介绍,微信小程序调试技巧,微信小程序定位技巧 |
| 知识点 | 手机浏览器自动化测试 | 手机浏览器调试技巧,手机浏览器定位技巧 |
| 知识点 | 【实战】雪球财经 app 实战 3- webview 自动化测试实战 | 用例设计,webview 页面自动化测试用例编写 |
L4.iOS 自动化测试¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Xcode 基础使用 | Xcode 基础使用 介绍 模拟器 |
| 知识点 | iOS 自动化测试环境安装 | iOS 自动化测试环境安装 |
| 知识点 | iOS 自动化相关工具 | iOS 常用工具介绍 常用命令 |
| 知识点 | iOS 元素定位 | iOS 元素定位 |
| 知识点 | iOS 模拟器自动化测试 | iOS 元素定位 |
| 知识点 | iOS 真机自动化测试 | WDA 配置与安装,WDA 原理分析 |
| 知识点 | iOS Safari 手机浏览器自动化测试 | Safari 配置与元素定位技术 |
| 知识点 | iOS WebView 手机浏览器自动化测试 | iOS WebView 元素定位技术与自动化测试 |
L4.Appium 源码分析与定制¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 设备交互 Api | 模拟电话、短信、飞行模式等场景 |
| 知识点 | 模拟器控制 | 代码控制模拟器启动 |
| 知识点 | appium 问题分析定位 | appium 的 log 分析与自动化流程解读 |
| 知识点 | appium 原理与 JsonWP 协议分析 | appium 原理,JsonWP 协议 |
| 知识点 | appium 源代码分析 | appium 核心源码分析 |
| 知识点 | appium 源码修改定制 | 源代码改造,功能定制,重新编译打包 |
| 知识点 | appium 基于图像识别的自动化测试 | 基于图像识别的自动化测试 |
L5.分布式测试与多设备管理¶
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 多设备自动化测试 | 兼容性测试:同一套代码同时兼容多台手机设备 |
| 知识点 | 基于 jenkins 的自动化调度详解 | 兼容性测试:利用并行机制加速测试用例的执行 |
| 知识点 | 多设备管理平台 stf | 兼容性测试:打造自己的智能设备实验室管理上百台设备 |
| 知识点 | 跨平台设备管理方案 selenium grid | 兼容性测试:构建支持 android、ios、web 的多架构自动化测试平台 |
| 知识点 | 自动遍历测试技术 | 自动遍历测试:自动遍历测试方法的定义与 BAT 等大厂常用工具 |
| 知识点 | android maxim 遍历测试工具 | 自动遍历测试:更灵活快速的 android 遍历工具 |
| 知识点 | android fastbot 遍历测试工具 | 自动遍历测试:更灵活快速的 android 遍历工具 |
| 知识点 | 多平台自动遍历测试工具 appcrawler | 自动遍历测试:支持 andorid、ios 的多平台 app 遍历工具 |
| 知识点 | 基于手机短信验证码的自动化测试 | 利用手机端数据库,获取手机验证码验证数据信息 |
| 知识点 | 基于 OCR 识别方法的自动化测试 | 掌握基于 OCR 图像识别技术实现 app 自动化测试 |
| 知识点 | 基于 AI 识别方法的自动化测试 | 掌握基于 AI 识别技术实现 app 自动化测试 |
| 知识点 | airtest 测试框架 | 掌握基于图像识别技术 app 自动化测试框架 airtest |
| 知识点 | atx 测试框架 | 掌握安卓设备集群管理 atx |
| 知识点 | app 结构反编译 | 反编译 app 了解自动化测试相关数据 |
| 知识点 | app 测试用例自动生成技术 | 利用模板技术自动生成测试用例 |
| 知识点 | ui diff 新老版本对比 | 利用老版本数据完成快速回归测试 |
| 知识点 | app 端代码 mock 技术 | 利用 mock server 技术改进测试用例 |
| 知识点 | app 端代码 hook 技术 | 利用 frida 完成代码 hook 与 mock |
| 知识点 | 腾讯 AppAgent 智能体 | app 智能体介绍 腾讯 app appgent |
| 知识点 | 霍格沃兹 App 智能体 | 霍格沃兹 app 智能体原理 mcp 结合 adb 自动化 |
| 知识点 | midsence.js 智能体 | 多模态大模型 视觉识别 测试用例 断言 |
| 知识点 | App 自动化测试用例脚本生成 | 基于 app 界面生成自动化测试用例 |
| 知识点 | 基于 Appium mcp 的 App 自动化智能体 | 基于 Appium mcp 的 App 自动化智能体 |
| 知识点 | 使用智能体自动生成 App 测试用例 | 使用智能体自动生成 App 测试用例 |
用户端自动化测试经典面试题¶
教学目标¶
- 掌握用户端自动化测试面试回答技巧
- 掌握 selenium、appium 原理
- 掌握定位不到元素错误的解决方案与思路
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | selenium 原理解析 | 经典面试题 selenium 原理解析 |
| 知识点 | appium 原理解析 | 经典面试题 appium 原理解析 |
| 知识点 | 显式等待与隐式等待的区别 | 显式等待、隐式等待不同的使用场景分析 |
| 知识点 | 定位不到元素 | 定位不到元素的可能性分析 |
用户端专项测试¶
用户体验测试/专项测试¶
教学目标
- 掌握用户端性能测试能力
- 掌握用户体验测试与专项测试常用测试工具
- 掌握弱网测试、健壮性测试、兼容性测试等专项测试能力
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 专项测试的价值与体系 | 学习路线,专项测试使用场景 |
| 知识点 | app 启动性能分析 | 冷启动、热启动、暖启动、首屏启动指标分析 |
| 知识点 | app 首屏加载时间分析 | 使用 ffmpeg 录屏拆帧分析实战 |
| 知识点 | 接口性能分析 | dns、http/https 的接口性能分析 |
| 知识点 | PC 浏览器的性能分析 | PC 浏览器的性能数据获取与分析 |
| 知识点 | 手机浏览器的性能分析 | 手机浏览器的性能数据获取与分析 |
| 知识点 | app webview 性能分析 | hybrid app 的性能分析 |
| 知识点 | 微信小程序性能分析 | 微信小程序性能数据获取与分析 |
| 知识点 | W3C performance api | 性能 api 的讲解、调用与实战 |
| 知识点 | 卡顿分析 | 过度绘制、冰冻帧、卡顿数据 |
| 知识点 | 系统资源分析 | cpu 统计、mem 统计、网络流量分析 |
| 知识点 | 耗电量测试 | 使用 Batterystats 与 BatteryHistorian 完成耗电量分析 |
| 知识点 | 弱网测试 | 模拟弱网、丢包、延迟、不可访问等多种条件下的应用体验 |
| 知识点 | 健壮性测试 | 使用 monkey maxim 完成 app 的健壮性测试 |
| 知识点 | 兼容性测试 | 使用 appcrawler 完成遍历与兼容性分析 |
接口测试¶
L1.接口协议与接口测试¶
教学目标¶
- 了解接口测试的价值、知识体系与学习路线。
- 掌握常见协议 TCP HTTP 协议结构与通讯方式。
- 掌握接口测试设计思路。
- 掌握常用接口测试工具 Postman。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 接口测试价值与体系 | 接口测试的知识体系与学习路线 |
| 知识点 | 常见的接口协议 | HTTP 协议介绍 |
| 知识点 | 接口测试用例设计 | 接口测试用例设计思路 |
| 知识点 | postman 基础使用 | 最热门的接口测试工具 |
| 知识点 | 【实战】postman 实战练习 | 使用 postman 实现接口测试 |
L2.常用抓包工具¶
教学目标¶
- 掌握常用抓包工具 Charles 与 Fiddler。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 抓包工具 charles | 工具介绍、环境准备 |
| 知识点 | 抓包工具 fiddler | 工具介绍、环境准备 |
| 知识点 | 抓包工具证书配置 | 抓包工具证书配置 https 协议数据抓包 |
| 知识点 | 使用浏览器分析接口 | 分析接口请求数据与性能 |
| 知识点 | 抓包工具 mitmproxy | 工具介绍、环境准备,mitmdump、mitmweb |
| 知识点 | 【实战】App 抓包实战练习 | app 证书配置,对雪球实现抓包 |
| 知识点 | 【实战】接口测试实战练习 | 结合 postman 完成对宠物商店的接口测试 |
L3.Mock 工具使用¶
教学目标¶
- 掌握接口手工 mock 技术。
- 掌握常用接口测试工具 curl。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 接口管理框架 Swagger | 接口管理框架 Swagger |
| 知识点 | 代码生成框架 Swagger CodeGen | 代码生成框架 |
| 知识点 | YApi 接口管理平台 | 接口管理、接口测试、mock server、自动化测试 |
| 知识点 | httprunner测试框架 | httprunner测试框架 |
| 知识点 | 弱网测试 | charles 弱网测试使用 |
| 知识点 | mock 的价值与意义 | mock 的价值与意义 |
| 知识点 | 【实战】mock 实战练习 | 雪球实战练习 |
| 知识点 | 使用 curl 发送请求【选修】 | curl 命令的参数 |
| 知识点 | tcpdump 与 wireshark 的使用【选修】 | tcpdump 简介 wireshark 简介 |
L4.Mock 工具与定制化¶
教学目标¶
- 掌握接口自动化 mock 技术。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | Mock 技术体系 | stub mock fake 讲解与应用 |
| 知识点 | Mock 工具与定制化 | mitmproxy 或 WireMock 的使用场景与使用方法 |
接口自动化测试¶
L1.接口自动化测试用例设计¶
教学目标¶
- 掌握接口自动化测试体系。
- 掌握接口自动化测试用例设计方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 接口自动化测试框架介绍 | 最流行的接口测试框架简介、环境安装 |
| 知识点 | 接口请求方法 | http 接口请求方法构造 |
| 知识点 | 接口请求参数 | http 接口请求参数构造 |
| 知识点 | 接口请求头 | http 接口请求头构造 |
| 知识点 | 接口请求体-json | http 接口请求体为json格式 |
| 知识点 | 接口响应断言 | http 接口响应状态码断言 |
| 知识点 | json 响应体断言 | http 接口针对 json 响应体进行断言 |
| 知识点 | 【实战】宠物商店接口自动化测试实战 |
L2.接口请求构造与响应断言¶
教学目标¶
- 掌握接口自动化测试中的各种格式的请求构造与响应断言技巧。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 接口请求体-文件 | 请求体为文件的 http 接口请求 |
| 知识点 | 接口请求体-form表单 | 请求体为form表单的 http 接口请求 |
| 知识点 | 接口请求体-xml | 请求体为xml的 http 接口请求 |
| 知识点 | xml 响应断言 | 响应体为xml的断言 |
| 知识点 | cookie 处理 | cookie 自定义处理 |
| 知识点 | 超时处理 | 请求超时的异常处理 |
| 知识点 | 代理配置 | 利用代理分析测试脚本,排查请求错误 |
| 知识点 | 多层嵌套响应断言 | 利用jsonpath进行多层嵌套的响应断言 |
| 知识点 | 【实战】宠物商店接口自动化测试实战 |
L3.复杂断言与鉴权处理¶
教学目标¶
- 掌握接口自动化测试中复杂断言方法。
- 掌握接口自动化测试中接口鉴权解决方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 整体结构响应断言 | 应对大量响应数据字段的格式断言 schema 响应断言 |
| 知识点 | 数据库操作与断言 | 通过 sql 操作数据库、服务封装、数据还原、数据库断言 |
| 知识点 | 接口鉴权的多种情况与解决方案 | token、cookie、auth 等多种接口认证与解决方案 |
| 知识点 | 接口加密与解密 | 加密接口的测试方案 |
| 知识点 | 多套被测环境 | 多套被测环境切换的测试方案 |
| 知识点 | 多响应类型封装设计 | xml json 等多种类型响应值的封装 |
| 知识点 | 【实战】电子商城接口自动化测试实战 | 接口用例编写、框架设计、单接口、多接口、单系统、多系统接口自动化测试 |
| 知识点 | 【实战】电子商城接口自动化测试框架实战 | 接口用例编写、框架设计 |
L4.加解密与多套被测环境¶
教学目标¶
- 掌握接口加密情况下的测试设计方法。
- 掌握接口自动化测试中切换多套被测环境方法。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | dubbo 协议的接口测试 | dubbo 协议测试技术 |
| 知识点 | thrift 协议的接口测试 | thrift 协议测试技术 |
| 知识点 | pb 协议的接口测试 | pb 协议测试技术 |
| 知识点 | socket 协议的接口测试 | socket 协议测试技术 |
| 知识点 | websocket 协议的接口测试 | websocket 协议测试技术 |
| 知识点 | mqtt 协议的接口测试 | 物联网协议测试技术 |
L5.多协议下接口测试方案设计¶
教学目标
- 掌握 dubbo pb 等协议的接口测试方法
- 掌握基于 gor 的流量录制回放技术
- 掌握基于 diffy 的接口 diff 测试方法
- 掌握测试用例自动生成方法
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 接口管理体系 | 接口管理体系 stub 与 sdk 的自动生成 |
| 知识点 | gor 流量回放 | 流量回放体系 |
| 知识点 | diffy 接口 diff 测试工具 | 项目重构时的接口快速 diff 方法 |
| 知识点 | 异步接口 | 异步接口测试方法 |
| 知识点 | har 生成用例 | har 文件格式讲解与用例自动生成 |
| 知识点 | 接口自动化智能体工具 | swagger 自定义工具 |
| 知识点 | 接口自动化测试脚本生成 | 基于接口文档生成接口自动化用例 |
| 知识点 | 使用智能体自动生成接口测试用例 | 使用智能体自动生成接口测试用例 |
接口测试经典面试题¶
教学目标¶
- 掌握接口测试理论知识相关常见面试题原理。
- 掌握接口测试应用场景相关常见面试题原理。
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | http 与 https 的区别 | 分析 http 与 https 的区别 |
| 知识点 | get、post 区别 | get 与 post 的本质区别与具体抓包解读 |
| 知识点 | session、cookie、token 的区别 | 基于真实系统了解 session、cookie、token 的区别 |
| 知识点 | tcp 三次握手与四次挥手 | 分析三次握手与四次挥手流程 |
| 知识点 | tcp 与 udp 的区别 | 分析 tcp 与 udp 的区别 |
| 知识点 | 消息队列测试场景 | 消息队列介绍,消息队列相关测试点介绍 |
| 知识点 | redis 测试场景 | redis 介绍,redis 相关测试点介绍 |
算法与设计模式¶
数据结构与算法¶
教学目标¶
- 掌握常见数据结构与代码实现方案
- 掌握常见算法与代码实现方案
- 掌握常见设计模式与代码实现方案
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 算法性能评估 | 时间复杂度、空间复杂度 |
| 知识点 | 数组与列表 | 经典排序算法 冒泡排序 选择排序 |
| 知识点 | 队列 | 管道应用、消息收发、FIFO 先进先出 |
| 知识点 | 堆栈 | LIFO 后进先出、函数调用的堆与栈的区别 |
| 知识点 | 链表 | 单链表、双链表的应用与常见算法 |
| 知识点 | 二叉树 | 二叉树的创建,前序、中序、后序遍历算法 |
| 知识点 | 多叉树 | 多叉树基本结构、算法与应用场景 |
| 知识点 | 递归算法 | 使用递归算法替代传统循环 |
设计模式¶
教学目标¶
- 掌握常见数据结构与代码实现方案
- 掌握常见算法与代码实现方案
- 掌握常见设计模式与代码实现方案
知识点¶
| 形式 | 章节 | 描述 |
|---|---|---|
| 知识点 | 单例 | 确保对象的唯一性实现 |
| 知识点 | 工厂方法 | 简单工厂方法、工厂模式、抽象工厂模式 |
| 知识点 | 其他设计模式 | 常用设计模式讲解 |
| 知识点 | 设计模式基本原则 | 开放-关闭原则 里氏替换原则 依赖倒转原则 接口隔离原则 迪米特法则 组合/聚合复用原则 |
面试与简历¶
软件测试/互联网大厂测试开发岗面试全攻略¶
| 形式 | 课程内容 |
|---|---|
| 知识点 | 构建条理清晰的简历内容架构 |
| 知识点 | 技术技能写多少合适 |
| 知识点 | 项目经验中如何量化自己的工作成果 |
| 知识点 | 自我评价怎么写才出彩 |
| 知识点 | 互联网大厂面试流程 |
| 知识点 | 备战面试,你需要做好哪些准备 |
| 知识点 | 设计一个让面试官记住你的自我介绍 |
| 知识点 | 面试中项目经验怎么介绍才出彩 |
| 知识点 | 机智应对 HR 软技能考核 |
| 知识点 | 如何跟 HR 谈薪资 |
| 知识点 | 高情商提出离职申请 |
| 知识点 | 辨别 offer 优劣,完成职场晋升 |
大模型与 AIGC 应用体系¶
L1. 大语言模型与私有部署¶
| 章节 | 描述 | 标签 |
|---|---|---|
| openai chatgpt 大语言模型 | chatgpt 模型体系 提示词 参数 调用方法 | |
| 阿里 qwen 千问大模型 | qwen 模型体系 提示词 参数 调用方法 | |
| meta llama 大模型 | llama 模型体系 提示词 参数 调用方法 | |
| google gemini 大模型 | gemini 模型体系 提示词 参数 调用方法 | 选学 |
| 法国 mixtral 大模型 | mixtral 模型体系 提示词 参数 调用方法 | 选学 |
| 大模型管理平台 Ollama | 量化模型介绍 本地部署方法 | |
| llama 大模型私有部署 | llama 模型下载 本地调用 | |
| deepseek 大模型私有部署 | deepseek 模型下载 本地调用 | |
| 阿里 qwen 千问大模型私有部署 | qwen 模型下载 本地调用 | |
| 人工智能应用平台 Dify | 大模型配置 工具管理 知识库管理 ai 应用开发 | |
| dify AI 聊天助理应用开发 | 大模型对接 参数配置 ai 对话提示词 | |
| 人工智能应用平台 Coze | 字节跳动 coze studio | |
| google gemma 大模型私有部署 | gemma 模型下载 本地调用 | 选学 |
| hugging-face 大模型开发平台 | 模型体系 工具 | 选学 |
| 魔搭大模型管理平台 | 国内下载大模型的平台 模型体系 工具 | 选学 |
| 大语言模型微调 LLaMA-Factory | 模型微调 微调配置 | 选学 |
L2.大语言模型提示词工程¶
| 章节 | 描述 | 标签 |
|---|---|---|
| 大语言模型提示词工程 | 大模型参数 提示词理解 提示词工程方法 | |
| ReACT 推理模式 | Thought 想法 Action 心动 Observation 观测 提示词写法 | |
| AutoGPT 自动推理智能体 | 智能体启蒙之作 autogpt 的使用介绍 | 选学 |
| 使用工具的自动推理 | 工具使用提示词 工具函数定义 | |
| 代码自动生成 | 生成代码 指定语言 | 选学 |
| 数据自动生成 | 生成数据 格式要求 | 选学 |
| 检索增强生成(RAG) | RAG 提示词 上下文 提示词策略 | |
| 基于 RAG 业务知识库 AI 助理应用开发 | 知识库 文档上传分割 RAG 提示词 应用开发 |
L3. 人工智能应用开发¶
| 章节 | 描述 |
|---|---|
| AI 工作流应用开发 | 工作流介绍 节点类型 流程编排 |
| 智能体 Agent 介绍 | 智能体核心要素 提示词工程 推理方法 记忆体 |
| AI 智能体应用开发 | 工具体系 智能体 ReAct 提示词工程 |
| mcp 协议介绍 | mcp 协议 inspector 开发框架 |
| playwright mcp 工具 | 原理 关键工具 集成 自然语言驱动 web 执行 |
| browser-use 智能体 | 原理 应用 mcp 工具 集成 自然语言驱动 web 执行 |
| 接口自动化智能体工具 | swagger 自定义工具 |
L4. 多模态大模型与私有部署¶
| 章节 | 描述 | 标签 |
|---|---|---|
| 语音识别模型 | 选学 | |
| 视觉识别大模型 | 选学 | |
| 文生图大模型 | 选学 | |
| 文生视频大模型 | 选学 | |
| 文生图大模型 Stable Diffusion 部署 | 选学 | |
| 文生图大模型 Flux 部署 | 选学 | |
| 文生图大模型 CogView 部署 | 选学 | |
| 文生视频大模型部署 | 选学 | |
| 多模态大模型开发 HuggingFace | 选学 |
L5. AI Agent 智能体应用¶
| 章节 | 描述 | 标签 |
|---|---|---|
| Web 自动化智能体 | 基于 Web 自动化框架的智能体 | |
| App 自动化智能体 | 基于 App 自动化框架的智能体 | |
| 接口自动化智能体 | 基于接口自动化框架的智能体 | |
| Dify 插件开发体系 | 自定义工具 接口开发 swagger 规范 | |
| 办公自动化智能体 | 电脑操作 | 选学 |
| 图文文章生成智能体 | 文生图 图片搜索结合智能体 | 选学 |
| 流程图生成智能体 | plantuml 图表生成 | 选学 |
| 短视频生成智能体 | moviepy 视频剪辑工具封装 | 选学 |