|
|
第一阶段目标 | 夯实基本测试技能 |
|
技能模块 内容描述 |
|
互联网测试流程与理论(必修课程) |
|
软件开发流程与项目管理 |
SCRUM、XP、持续集成 / 持续交付 / DevOps |
测试流程体系 |
传统测试流程、测试左移、测试右移 |
测试技术体系 |
分层测试体系、单元测试、UI 测试、接口测试、白盒测试 |
常用测试平台 |
用例管理平台、Bug 管理平台、代码管理平台、持续集成平台 |
黑盒测试方法论 |
边界值、等价类、因果图、探索式测试等 |
白盒测试方法论 |
代码覆盖、流程覆盖、精准化测试 |
测试经典书籍拆分讲解 |
《全程软件测试》、《探索式测试》、《持续交付》、《Google 测试之道》、《不测的秘密》等 |
实战 | 测试工程师测试工作实战演 练 |
基于雪球财经真实 App 带你从 0 开始测试工作 |
Linux 与 Bash 必备技能(全网独家特色课程/前阿里巴巴内部教材) |
|
Linux 系统与 Shell 环境准备 |
多平台配置 Shell 使用环境 |
Linux 常用命令 (文件/网络/性能) |
掌握 BAT 大厂面试必考经典命令 |
Linux 三剑客与管道使用 |
掌握 grep、awk、sed 等 Linux 经典数据处理技术 |
Bash 编程语法 |
变量定义与常用流程控制语法解析 |
Bash 脚本编写 |
编写可以直接执行的 Shell 脚本 |
实战 | 三剑客实战 Nginx 日志分 析 |
以真实的 Web Log 为例演练如何分析核心测试数据指标 |
实战 | 三剑客实战 Linux 性能统 计分析 |
统计特定进程的 CPU、MEM 等基础性能数据 |
实战 | 抽奖程序脚本编写 |
使用三剑客完成数据处理 |
SQL 语法与数据库必备技能(必修课程) |
|
数据库搭建与使用 |
掌握 MySQL 数据库的部署与客户端工具使用 |
PHPMyAdmin 操作 |
便捷连接数据库的 Web 工具 |
数据库结构解析 |
分析数据库的进程与基本的结构定义 |
SQL dds 数据库与表结构创建 |
使用 SQL 完成数据库、表、字段的定义与修改 |
SQL dms 数据查询 |
使用 SQL 完成数据的查询、更新、删除等操作 |
SQL Join |
使用 Join 完成多表连接查询,包括左连接、右连接、全连接 |
Redis 内存数据库 |
性能最快的内存数据存储 |
MongoDB NoSQL 数据库 |
经典的 NoSQL 数据库介绍与使用 |
Neo4j 图数据库 |
图数据的应用介绍 |
实战 | SQL 的复杂查询实战 |
子查询、左连接、右连接、全连接实战 |
Python 编程语言与测试框架(测试开发定制版必修课程) |
|
Python 环境管理与 Pip 依赖管理 |
安装多版本 Python 与 IDE 综合配置,第三方的依赖管理与项 目管理 |
Python 基本数据类型与操作 |
Python 的数字、字符串、列表的使用 |
Python 控制流语法 |
条件、循环等表达式与流程控制 |
Python 函数 |
函数定义、各类参数定义、Lamda 表达式 |
Python 常用数据结构 |
列表、元组、集合、词典与常用便捷表达式 |
Python 面向对象编程 |
类定义、方法定义、类变量、实例引用、实例变量 |
Pytest 测试框架 |
Python 最流行的全能型测试框架 |
参数化用例 |
用测试数据构建更多测试用例 |
数据驱动 |
利用外部数据源 YAML、Json、Excel、CSV 管理测试 |
测试报告美化与定制 |
使用最优秀的测试报告框架构建自定义测试报告 |
实战 | Python Pytest 测试实战 |
真实项目的单元测试实战 |
第二阶段目标 | 搞定客户端测试 |
|
Web 自动化测试技术与实战(经典实战课程) |
|
Selenium 的安装 |
Selenium 的 Python binding、driver 的安装与配置 |
Selenium IDE 用例录制 |
使用录制技术完成首个测试用例并分析用例结构与控件定位知 识 |
Selenium 测试用例编写 |
引入依赖、熟悉用例的流程并手工编写用例、使用隐式等待解决 异常 |
隐式等待与显式等待 |
介绍 Selenium 经典的三种等待方式 |
Web 控件定位与常见操作 |
ID、Name、CSS、Xpath 等定位方法的本质解读与点击和输入 操作 |
Web 控件的交互进阶 |
右键点击、页面滑动、表单填写等自动化动作 |
网页 Frame 与多窗口处理 |
多窗口,多 Frame 下的窗口识别与切换 |
Selenium 多浏览器处理 |
Chrome、Firefox、Headless 等浏览器的自动化支持 |
执行 JavaScript 脚本 |
使用 Selenium 直接在当前页面中进行 JS 交互 |
文件上传弹框处理 |
文件上传的自动化与弹框处理机制 |
Page Object 设计模式 |
Page Object 模式的发展历史介绍 |
Page Object 原则 |
Page Object 模式的六大原则 |
实战 | Page Object 实战演练 |
Page Object 模式在真实网站中的应用 |
实战 | 企业微信 Web 端自动化测 试实战 |
使用真实的企业微信网站进行自动化测试实战 |
移动端 App 自动化测试技术与实战(经典实战课程) |
|
Appium 环境安装与架构介绍 |
Appium 的正确安装方法与架构介绍 |
Appium 用例录制 |
使用 Appium Desktop 完成首个 App 自动化用例 |
元素定位方法与隐式等待 |
id、aid 定位与隐式等待结合打造稳定用例 |
App 控件定位 |
id、aid、Xpath 定位方法、Dom 结构解读、UIAutoMatorViewer 定位工具 |
App 控件交互 |
点击、输入、获取属性 |
触屏操作自动化 |
根据坐标点击、滑动、以及其他手势操作 |
高级定位技巧 |
Xpath、UIAutomator 定位表达式以及滑动定位应用 |
显式等待机制 |
利用显式等待解决复杂条件下的控件定位 |
特殊控件 Toast 识别 |
弹框 Toast 的识别方法与原理解读 |
属性获取与断言 |
Get Attribute 原理分析与属性命名规则 |
参数化用例 |
使用参数化构建多条相似测试用例 |
数据驱动 |
实现测试步骤、测试数据的数据驱动 |
Android Web View 测试 |
对 Web View 控件完成自动化测试 |
微信小程序测试 |
对微信小程序进行自动化以及控件定位分析 |
设备交互 API |
模拟电话、短信、飞行模式等场景 |
模拟器控制 |
完成模拟器的自动启动与执行测试 |
Capability 使用进阶 |
复用已有 App 的状态、自动赋权限等场景应用 |
Android Webview 技术原理 |
Webview 组件的控件识别原理 |
Appium 问题分析定位 |
Appium 的 Log 分析与自动化流程解读 |
Appium 原理与 JsonWP 协议分 析 |
理解客户端、Appium Server、UIautomator2-Server 的协议 |
Appium 源代码分析 |
Appium 的组件结构与代码构建 |
实战 | Appium 二次封装实战 |
实现对源代码的修改与定制 |
实战 | 雪球财经 App 测试实战 |
把 Native、Webview 自动化应用于真实 App 的测试 |
实战 | 企业微信移动 App 实战 |
实现企业微信 App 的自动化测试 |
UI 测试技术与实战(特色课程/深度领先) |
|
测试框架设计思想 |
测试框架的需求定义与常见设计架构 |
Page Object 改造 |
PO 定义与实现的解耦与连接 |
测试步骤的数据驱动 |
使用 YAML、JSon 完成测试步骤的数据驱动 |
配置的数据驱动 |
从配置文件中读取关键配置 |
通用 Page 封装 |
通用 Page 类的抽象与功能实现 |
自动化异常处理机制 |
智能化处理各种广告、弹框的干扰 |
通用测试用例封装 |
所有测试用例的父类用例设计 |
通用测试框架构建 |
最终的测试框架形态与使用 |
实战 | 打造自己的测试框架 |
从零开始打造企业定制的 UI 测试框架 |
客户端测试平台技术与实战(经典实战课程) |
|
自动遍历测试技术 |
自动遍历测试方法的定义与 BAT 等大厂常用工具 |
Android Monkey 健壮性测试工具 |
Android 健壮性与压力测试工具 Monkey 的进阶使用 |
多平台自动遍历测试工具 AppCrawler |
支持 Andorid、iOS 的多平台 App 遍历工具 |
多设备管理平台 STF |
打造自己的智能设备实验室管理上百台设备 |
跨平台设备管理方案 Selenium Grid |
构建支持 Android、iOS、Web 的多架构自动化测试平台 |
基于 Jenkins 的自动化调度详解 |
利用并行机制加速测试用例的执行 |
专项测试技术与实战(特色课程/行业领先) |
|
App 启动性能分析 |
冷启动、热启动、暖启动、首屏启动指标分析 |
接口性能分析 |
DNS、HTTP/HTTPS 的接口性能分析 |
Webview 性能分析 |
Hybrid App 的性能分析 |
H5 性能分析 |
冷启动、热启动、暖启动、首屏启动指标分析 |
CPU 统计与 Mem 统计 |
CPU 统计与 Mem 统计 |
网络流量分析 |
网络流量分析 |
卡顿分析 |
过度绘制、冰冻帧、卡顿数据 |
耗电量测试 |
使用 Batterystats 与 Battery Historian 完成耗电量的基准分析 |
健壮性测试 |
使用 Monkey Maxim 完成 App 的健壮性测试 |
弱网测试 |
模拟弱网、丢包、延迟、不可访问等多种条件下的应用体验 |
实战 | App 专项测试实战 |
BAT 大厂如何做 App 移动专项测试,提高用户体验? |
第三阶段目标 | 攻坚服务端测试 |
|
服务端接口测试技术与实战(特色课程/深度领先) |
|
接口测试价值与体系 |
接口测试在分层测试中的价值与质量关注点 |
常见接口协议解析 |
TCP / UDP / HTTP / RESTFul / Dubbo 等协议区别与解读 |
抓包分析 TCP 协议 |
使用 TCPdump 与 WireShark 分析三次握手与四次挥手流程 |
使用 Postman 发送请求 |
使用图形化工具构造 HTTP 请求并发送 |
使用 CURL 发送请求 |
从已有的请求中自动生成对应的 CURL 命令 |
常用代理工具 |
Charles、BurpSuite、Mitmproxy、Anyproxy 等工具的应用 |
HTTP/HTTPS 抓包分析 |
SSL 证书设置与 HTTPS 抓包 |
HTTP 协议讲解 |
常用状态码、Header、请求与响应的格式分析 |
Get、Post 区别实战详解 |
Get 与 Post 的本质区别与具体抓包解读 |
Session、Cookie、Token 区别解 析 |
基于真实系统了解 Session、Cookie、Token 的区别 |
Mock 应用 |
通过代理修改请求与响应,辅助构造更多场景用例 |
实战 | 雪球 App 抓包与 Mock 实战 |
抓包、接口 Mock、异常测试 |
接口自动化测试框架实战(经典实战课程) |
接口测试框架 |
使用最流行的 Requests 进行接口测试 |
接口请求构造 |
常见的 Get / Post / Put / Head 等 HTTP 请求构造 |
接口测试断言 |
状态码、返回内容等断言 |
JSon/XML 请求 |
优雅的发送 Json、XML 请求 |
JSon/XML 响应断言 |
利用 Json path、Xpath 进行断言 |
Schema 断言 |
应对大量响应数据字段的格式断言 |
Header Cookie 处理 |
Header 自定义与 Cookie 复用 |
认证体系 |
HTTP Basic、Oauth2 等认证体系的测试 |
实战 | 企业微信接口测试实战 |
基于企业微信服务端接口的真实项目实战 |
接口测试框架与实战(深度领先/开源作者亲授) |
|
接口流程封装与定义 |
接口测试用例分析与通用的流程封装 |
基于加密接口的测试用例设计 |
利用封装完成加解密处理 |
多环境下的接口测试 |
利用封装加入 Header 的自动处理实现无须更改 Host 的多环 境测试 |
API Object 模式与原则 |
Page Object 模式在接口测试中的应用 |
API Object 模式应用 |
企业微信接口的封装复用 |
通用 API 封装 |
通用接口协议的定义与封装 |
测试步骤的数据驱动 |
基于 YMAL、JSon 实现测试步骤定义 |
测试数据的数据驱动 |
基于 YMAL、JSon 实现外部数据源读取 |
配置的数据驱动 |
基于 YMAL、JSon 实现关键配置的管理 |
通用测试用例封装 |
测试用例的继承体系设计 |
通用测试框架构建 |
通用型接口测试框架的构建与使用 |
实战 | 接口测试框架设计实战 |
从零开始打造接口测试框架(HttpRunner 框架作者亲授) |
服务端性能测试(经典实战课程) |
|
JMeter 介绍与安装 |
性能测试基本概念、常见压测工具、JMeter 的优点介绍与安装 |
压测脚本录制与编写 |
录制 HTTP/HTTPS 压测脚本分析压测用例结构 |
虚拟用户并发模拟 |
虚拟用户讲解与常见的压测策略 |
压测结果分析 |
测试结果报表分析与定制 |
JMeter 分布式压测 |
使用分布式技术放大压测能力 |
性能监控系统 |
使用 Influxdb/Grafana 汇总系统性能数据与压测数据 |
实战 | 性能监控体系实战 |
从零开始搭建性能监控系统并收集性能指标 |
实战 | 电商系统的压测实战 |
基于 JMeter 从零开始完成电商系统业务的压测实战 |
接口安全测试实战(独家特色课程) |
|
服务端安全测试体系 |
详解 OWASP 的 Top10 安全漏洞与安全防护体系 |
安全测试演练环境 |
搭建安全测试演练环境实操常见安全漏洞 |
基于 OWASP-ZAP 进行接口安全 测试 |
优秀的开源安全测试工具 |
安全测试工具 BurpSuite |
黑客与白帽子最常用的安全测试工具详解 |
命令注入漏洞 |
命令注入漏洞原理与实操 |
SQL 注入漏洞 |
SQL 注入、SQL 盲注等漏洞的原理介绍与实操 |
XSS 漏洞 |
XSS 多种漏洞的原理介绍与实操 |
CSRF 漏洞 |
CSRF 漏洞原理介绍与实操 |
实战 | 接口测试安全测试实战 |
企业级接口测试安全测试实战演练 |
第四阶段目标 | 提升持续集成/持续交付/DevOps 能力 |
|
Docker 容器技术(赠送课程/自动化测试必备) |
|
容器技术介绍 |
Docker 容器化技术的体系介绍 |
Docker 安装与配置 |
Docker 环境安装与国内加速配置 |
Docker 常用命令 |
使用常用命令完成镜像的拉取与容器的创建 |
搭建 Web 服务器 Nginx |
使用一行命令搭建基于 Nginx 的网站 |
搭建测试用例管理平台 TestLink |
使用 Docker 搭建测试用例管理平台 |
搭建持续集成平台 Jenkins |
使用 Docker 搭建持续集成管理平台 |
Docker-compose 使用 |
基于 Compose 搭建多镜像配合的容器 |
Docker 的 Registry 介绍 |
如何使用公共的 Registry 与搭建私有 Registry |
Dockerfile 语法与指令 |
创建 Docker 镜像所需要的配置解读 |
Docker 镜像构建 |
构建自己的第一个 Docker 镜像 |
实战 | Docker 实战常用测试平台 搭建 |
掌握搭建自己的容器化测试平台能力 |
实战 | Docker 镜像构建实战 |
基于真实项目完成 Docker 镜像的构建 |
持续集成技术与实战(独家特色课程) |
|
持续集成体系介绍 |
持续集成的核心概念 |
Jenkins 安装 |
Jenkins 平台的部署与数据管理方法 |
Jenkins Job 机制 |
定义你的第一个持续集成任务 |
节点管理 |
把机器加入 Jenkins 的节点 |
权限控制 |
Jenkins 的安全管理机制讲解 |
常用插件 |
HTML Publish、JUnit 报告管理、父子任务等常用插件 |
报警机制 |
Job 构建结果的提取与多种通知方式 |
矩阵 Job 与父子 Job |
Job 之间的分工与协作管理 |
实战 | 持续集成-UI 自动化测试集 成实战 |
将 Selenium、Appium 的用例放入持续集成 |
实战 | 持续集成-接口测试集成实 战 |
讲接口测试用例放入持续集成管理 |
实战 | 持续集成体系构建实战 |
代码变更后的全自动测试流程体系构建 |
持续交付与 DevOps 实战(经典课程,深度领先) |
|
Jenkins API 接口 |
在已有的流程平台中调用 Jenkins 并获取数据 |
PipeLine 入门 |
PipeLine 流程定义语法详解与实操 |
JenkinsFile 语法 |
在实际项目中使用 JenkinsFile 实现自动化流程定义 |
Blue Ocean 应用 |
流程定义与流程可视化管理 |
实战 | 持续交付实战 |
实战演练,掌握持续交付能力 |
测试平台开发实战(全网独家/深度领先) |
|
前端模板框架 |
基于 Vue.JS 的前端模板技术 |
前端 UI 框架 |
基于 BootStrap、Vuetify 的 UI 组件框架 |
后端 Web 开发框架 |
基于 Spring Boot、SparkJava 等框架的后端构建技术 |
数据持久化技术 |
MySQL 数据库的使用 |
数据展示与分析 |
使用 ECharts 等报表库绘制优美的图表 |
跨平台 API 对接 |
与 Jenkins、Jira、Redmine 系统进行集成调用 |
实战 | 测试平台构建实战 |
从零开始构建企业内部测试平台 |
测试右移实战(全网独家/深度领先) |
|
测试右移 |
深度解读测试右移理念和流行技术体系 |
Logstash 讲解 |
数据采集与传输 |
Elastic Search 搜索引擎讲解 |
Elastic Search 的索引、文档、查询语法基本概念讲解 |
Kibana 可视化分析平台 |
介绍 Kibana 经典的分析方法与图表使用 |
测试工程师能力等级考试 & 毕业典礼 |
|
测试工程师等级考试 |
测试技能评测 |
毕业典礼 |
合格学员证书颁发、优秀学员颁奖 |