性能班介绍

课程介绍

性能测试班是一个面向有测试经验,具有基础编程能力,想要提升性能测试能力的测试开发工程师的班级,课程以服务测试行业的社招需求为出发点,涵盖性能测试方案设计,JMeter 使用、二次开发,多个复杂系统的压测实战,中间件微服务压测实战,全链路压测实战。

学习计划

整体课程持续 14 周

技术体系 时长(周)
第一阶段 性能测试方案设计、JMeter使用详细讲解
开学典礼与测试体系介绍 1
Linux命令与Bash编程 0
JMeter性能测试工具 0
单接口负载测试实战 1
Restful 接口压力测试实战 1
第二阶段 性能监控、分布式、复杂系统压测实战
JMeter分布式压测与用例导入 0
性能监控系统Prometheus搭建实战 1
分布式压测与性能监控剖析实战 1
电商系统压测实战 1
复杂技术架构的电商系统压测实战 1
第三阶段 多协议、中间件、微服务压测实战
多协议接口压测 0
中间件消息管道压测实战 1
中间件缓存系统压测实战 1
微服务性能测试 1
第四阶段 性能瓶颈分析与Java 进程性能剖析
性能瓶颈分析 0
性能监控体系 0
JVM 性能剖析 0
Java 进程的性能剖析实战 1
电商平台前端性能监控实战 1
第五阶段 全链路、全场景压测实战
内核层性能剖析 0
分布式性能监控系统 SkyWalking 0
电商平台全场景压测实战 1
电商平台全链路压测实战 1
赠课
Java语法基础 0

直播训练营

直播训练营 性能班
性能测试实战训练营 - 单接口负载测试实战
性能测试实战训练营 - Restful 接口压力测试实战
性能测试实战训练营 - 性能监控系统 Prometheus 搭建实战
性能测试实战训练营 - 分布式压测与性能监控剖析实战训练营
性能测试实战训练营 - 电商系统压测实战
性能测试实战训练营 - 复杂技术架构的电商系统压测实战
性能测试实战训练营 - 中间件微服务实战
性能测试实战训练营 - Java 进程的性能剖析实战
性能测试实战训练营 - 全流程性能瓶颈分析实战

性能测试体系

学习目标
  • 掌握性能测试基本概念。
  • 掌握性能测试场景设计。
知识点
形式 章节 描述
知识点 性能测试介绍 性能测试价值 体系 流程 方法论
知识点 行业流行性能压测工具介绍
知识点 行业流行性能监控工具介绍
知识点 行业流行性能剖析工具介绍
知识点 性能测试流程与方法
知识点 性能测试计划 压测业务场景定义 性能指标拆解 测试方案
知识点 性能测试报告 压测业务场景定义 性能指标拆解
知识点 性能测试场景设计 压力测试 负载测试 基准测试 稳定性测试 健壮性测试
知识点 性能测试概念 并发 并行 多进程 多线程 TPS QPS 吞吐量 延迟
知识点 经典技术架构解析 传统服务 数据库 微服务 缓存 消息管道

Linux 与 Bash 编程

L1.Linux 文件处理命令

教学目标
  • 熟悉 Linux 系统及常用命令。
知识点
形式 章节 描述
知识点 Linux 系统与 Shell 环境准备 多平台配置 shell 使用环境
知识点 Linux 常用命令之文件处理 面试必考经典命令

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 脚本

性能测试工具与监控

L1.性能测试工具-JMeter常用组件

学习目标
  • 掌握 JMeter 的安装配置。
  • 掌握 JMeter 常用组件。
  • 掌握基本的监控命令行。
知识点
形式 章节 描述
知识点 JMeter 介绍与安装
知识点 JMeter 的运行
知识点 使用代理服务器录制请求
知识点 测试计划
知识点 线程组
知识点 控制器
知识点 JMeter 采样器/取样器
知识点 JMeter 场景逻辑控制技术
知识点 JMeter 监听器
知识点 JMeter 定时器
知识点 JMeter 断言元件的使用
知识点 JMeter 常用配置元件剖析
知识点 JMeter 前置处理器
知识点 JMeter 后置处理器
知识点 JMeter 执行顺序
知识点 JMeter 虚拟用户管理
知识点 HTTP 请求属性设置
知识点 HTTP cookie 设置
知识点 HTTP 信息头管理器
知识点 HTTP 请求设置
知识点 监听器与测试结果

L1.性能监控-服务端统计工具

学习目标
  • 掌握 Linux 服务端基本的监控命令。
知识点
形式 章节 描述
知识点 性能分析系统级别指标 io cpu mem net
知识点 top 命令使用
知识点 ps 命令
知识点 nmon 工具
知识点 基本性能监控系统使用

性能监控与复杂系统压测

L2.性能测试工具-JMeter参数化与并发

学习目标
  • 掌握 JMeter 脚本参数化。
  • 掌握压测中的并发策略。
知识点
形式 章节 描述
知识点 JMeter 变量与引用
知识点 使用变量进行参数化测试
知识点 JMeter 参数化 csv
知识点 JMeter 参数化 xml
知识点 JMeter 参数化 json
知识点 JMeter 参数化 yaml
知识点 JMeter 参数化 redis
知识点 JMeter 参数化 mysql
知识点 JMeter 并发策略
知识点 web service 加压实战

L2.性能监控-Prometheus 监控系统

学习目标
  • 掌握 Prometheus 监控系统搭建。
知识点
形式 章节 描述
知识点 性能监控系统价值
知识点 搭建服务端性能监控系统 Prometheus
知识点 搭建数据分析系统 Grafana
知识点 jmeter 实时压测结果收集
知识点 系统性能数据收集(cpu、mem、net、io)
知识点 Prometheus 监控系统部署应用实战

分布式复杂系统压测

L3.性能测试工具-JMeter分布式与Beanshell

学习目标
  • 掌握 JMeter 分布式压测与用例导入。
  • 掌握 Beanshell 脚本编写。
知识点
  • JMeter分布式压测与用例导入
形式 章节 描述
知识点 JMeter 分布式加压机制
知识点 JMeter 分布式压测与持续集成实战
知识点 Beanshell 脚本开发技术
知识点 Java-Beanshell 语法与内置对象 vars、cxt、prev 等内置技术
知识点 自定义 jar 导入 JMeter 自定义 jar 导入 JMeter 加解密
知识点 运行 JUnit 测试用例 运行 JUnit 测试用例
知识点 JMeter 调试方法

L3.用户端性能测试-用户体验测试

学习目标
  • 掌握原生 app 性能数据采集。
  • 掌握 webview 性能数据采集。
  • 掌握微信小程序性能数据采集。
知识点
形式 章节 描述
知识点 app 端 native 原生性能分析 分析原生 app 性能数据
知识点 app 端 webview 控件性能分析 分析 webview 性能数据
知识点 app 端微信小程序性能分析 分析微信小程序性能数据
知识点 w3c performance api 应用 应用 w3c performance api
知识点 移动性能数据的自动化采集 自动采集移动性能数据

L3.性能监控-Nginx与数据库

学习目标
  • 掌握 Nginx 数据采集。
  • 掌握数据库数据采集。
知识点
形式 章节 描述
知识点 Nginx 性能数据监控
知识点 数据库服务器性能数据采集(以 mysql 为例)

微服务压测与性能瓶颈分析

L4.性能测试工具-JMeter微服务压测

学习目标
  • 掌握微服务中常用协议的性能压测。
知识点
形式 章节 描述
知识点 JMeter Dubbo 接口压测实战
知识点 JMeter PB 接口压测实战
知识点 JMeter TCP Socket 压测实战
知识点 JMeter Kafka 压测实战
知识点 JMeter 微服务性能压测实战

L4.性能瓶颈分析-Nginx/MySQL/Redis/Kafka

学习目标
  • 掌握缓存、队列、JVM 的性能瓶颈分析。
知识点
形式 章节 描述
知识点 应用性能瓶颈分析(nginx)
知识点 数据库性能瓶颈分析(mysql)
知识点 缓存性能瓶颈分析(redis)
知识点 队列性能瓶颈分析(kafka)

L4.性能监控-JVM/队列/缓存

学习目标
  • 掌握缓存、队列、JVM 的性能数据采集。
知识点
形式 章节 描述
知识点 JVM 性能数据采集(微服务 spring boot 为例)
知识点 队列服务器性能数据采集(以 kafka 为例)
知识点 缓存服务器性能数据采集(以 redis 为例)

全链路、全场景压测

L5.性能测试工具-JMeter二次开发

学习目标
  • 掌握 JMeter 插件机制。
  • 了解全链路压测。
知识点
形式 章节 描述
知识点 JMeter 的插件体系
知识点 加载第三方插件
知识点 JMeter 插件机制
知识点 编写首个自己的插件
知识点 JMeter 源代码分析
知识点 全链路压测体系介绍

L5.性能瓶颈分析-性能剖析与火焰图

学习目标
  • 掌握 JVM 性能分析方法。
  • 掌握火焰图分析方法。
知识点
形式 章节 描述
知识点 Java 程序的常见启动参数
知识点 JVM 内存分配机制
知识点 JVM 性能剖析常用命令
知识点 JVM 性能分析工具 JVisualVM
知识点 内核 trace 技术体系 bcc bpftrace iovisor perf systemtap dtrace
知识点 内核 trace 工具 perf
知识点 内核 trace 工具 eBPF
知识点 cpu 火焰图 Flame Graphs 分析
知识点 调用图 call graph 分析
知识点 内存火焰图 Flame Graphs 分析

L5.性能监控-分布式性能监控系统 SkyWalking

学习目标
  • 掌握 SkyWalking 搭建及使用。
知识点
形式 章节 描述
知识点 SkyWalking 系统介绍
知识点 SkyWalking 搭建
知识点 SkyWalking 功能介绍
知识点 Java 应用 Trace 实战
知识点 Python 应用 Trace 实战
知识点 前端应用 Trace 实战
知识点 移动端 Trace 实战

L5.性能测试平台-性能测试平台设计

学习目标
  • 掌握结合 JMeter 开发性能平台。
知识点
形式 章节 描述
知识点 性能测试平台设计方案
知识点 性能测试平台源代码分析讲解