MapFlow

PUBLIC LEARNING ROADMAP

软件测试全栈能力进阶(含Ubuntu实战与学期项目测试) 学习技能树

由 Skill Tree Engine 确定性生成的只读快照

27 个知识节点 · intermediate

发布者:zzj2

知识目录

核心技能

软件测试核心概念与质量观

理解软件质量、缺陷定义、测试目的与V模型等基础思想,为全部测试工作打底

建议预留 45 分钟

学习目标

  • 理解软件质量与缺陷的本质
  • 掌握测试目的与V模型思想

关键概念

  • 软件质量
  • 缺陷定义
  • V模型
  • 测试目的

为什么学习

  • 测试人员必须理解测试目的、质量观与V模型才能合理定义每个环节的验收标准

如何检验理解

  • 能用自己的话解释V模型各阶段与测试的关系并指出常见缺陷来源

基础概念

Ubuntu安装与基础环境搭建

在虚拟机/双系统中安装Ubuntu并配置测试开发环境,奠定后续Linux实战基础

建议预留 60 分钟

学习目标

  • 完成Ubuntu安装与源配置
  • 能启动并维护日常系统

关键概念

  • 虚拟机
  • 双系统
  • 软件源
  • 环境配置

为什么学习

  • 学习者已拥有Ubuntu环境,需能独立安装并配置可用系统环境以支撑其余Linux链

如何检验理解

  • 能在Ubuntu中完成系统安装并验证基本网络与软件源可用

核心技能

软件测试流程与生命周期

掌握需求分析、计划、设计、执行、评估、回归的完整流程,形成测试引擎

建议预留 40 分钟

学习目标

  • 掌握测试流程各阶段
  • 理解回归与评估环节价值

关键概念

  • 测试计划
  • 测试设计
  • 测试执行
  • 回归测试
  • 测试评估

为什么学习

  • 任何测试工作需要按规范生命周期推进,是文档化与回归策略的基础

如何检验理解

  • 能绘制并解释完整测试生命周期及各活动输入输出

核心技能

Linux命令行与文件系统基础

掌握目录结构、文件操作、权限管理与常用命令,是测试工具部署与排障的根基

建议预留 60 分钟

学习目标

  • 掌握常用Linux命令
  • 理解文件权限与进程管理

关键概念

  • 命令行
  • 文件系统
  • 权限管理
  • 进程查看
  • Shell命令

为什么学习

  • 目标要求熟练Linux命令行与工具配置,缺少命令基础将无法部署和排查测试系统

如何检验理解

  • 能仅用命令行完成文件/权限/进程管理及查看运行状态

工具链

Git版本控制与协作流程

掌握分支、提交、合并、标签及协作规范,服务于脚本管理与CI/CD

建议预留 50 分钟

学习目标

  • 掌握Git基本命令
  • 维护测试脚本版本一致

关键概念

  • 分支
  • 提交
  • 合并
  • 仓库
  • 协作流程

为什么学习

  • 测试脚本需要版本管理并与团队协作,属推荐入门但前进阶流水线需掌握基础提交

如何检验理解

  • 能将自动化测试脚本初始化仓库、提交分支并回滚错误改动

核心技能

黑盒测试用例设计方法

掌握等价类、边界值、判定表、因果图、场景法等设计技术,是设计与文档化的核心

建议预留 80 分钟

学习目标

  • 掌握等价类与边界值设计
  • 能运用判定表与场景法设计用例

关键概念

  • 等价类
  • 边界值
  • 判定表
  • 因果图
  • 场景法

为什么学习

  • 3个月内需针对相片系统项目设计完整用例,属必须熟练迁移应用到具体业务场景的能力

如何检验理解

  • 能对相片上传/相片分类等功能用等价类与边界值设计出覆盖充分的用例

核心技能

Python编程与数据基础

掌握Python语法、数据结构、类与脚本编写,衔接自动化测试所需封装能力

建议预留 60 分钟

学习目标

  • 巩固Python语法与数据结构
  • 能在命令行执行自动化脚本

关键概念

  • Python语法
  • 数据结构
  • 类与函数
  • 脚本执行

为什么学习

  • 学习者已有函数与类基础,本节点补齐脚本化与数据结构以支撑封装修自动化用例

如何检验理解

  • 能编写可读的函数与类并在Linux下运行调试Python脚本

补充知识

数据库SQL基础操作

理解基本SQL查询与数据校验,用SQL验证测试数据正确性(MySQL/SQLite)

建议预留 40 分钟

学习目标

  • 掌握基本SQL增删改查
  • 能用SQL校验测试数据

关键概念

  • SQL查询
  • 数据校验
  • MySQL
  • SQLite

为什么学习

  • 相片系统及接口测试需用SQL校验数据落库与篡改,属推荐入门但接口校验重要前置

如何检验理解

  • 能编写SELECT/INSERT/UPDATE查询截取并校验被测数据

核心技能

测试文档编写与缺陷管理

编写测试计划用例并掌握缺陷生命周期与跟踪工具,是项目交付的关键产出

建议预留 60 分钟

学习目标

  • 编写规范测试计划与用例文档
  • 掌握缺陷生命周期与跟踪

关键概念

  • 测试计划
  • 测试用例
  • 缺陷生命周期
  • 缺陷跟踪工具

为什么学习

  • 3个月内输出完整测试方案与文档记录是本阶段硬性目标,需能在真实项目规范产出

如何检验理解

  • 能独立撰写包含测试计划、用例与缺陷单的完整文档并用禅道/Jira跟进

核心技能

Python单元测试框架(unittest/pytest)

使用unittest/pytest编写断言、夹具、参数化与测试套件,是核心框架能力

建议预留 70 分钟

学习目标

  • 掌握unittest组织用例
  • 掌握pytest fixture与参数化

关键概念

  • unittest
  • pytest
  • 断言
  • fixture
  • TestSuite
  • 参数化

为什么学习

  • 目标要求熟练运用unittest与pytest组织用例,是自动化测试最低门槛

如何检验理解

  • 能分别用unittest与pytest编写含断言/夹具/参数化的用例并执行出报告

核心技能

接口测试与HTTP协议基础

理解REST API与HTTP状态码、报文结构,设计接口测试用例

建议预留 70 分钟

学习目标

  • 理解HTTP报文与状态码
  • 掌握REST接口测试设计
  • 理解常见鉴权方式

关键概念

  • HTTP协议
  • REST API
  • 状态码
  • 鉴权
  • 请求响应

为什么学习

  • 接口测试要求熟练理解HTTP/HTTPS报文与REST鉴权,是Postman与JMeter的前提

如何检验理解

  • 能解析一个相片系统REST请求报文并设计覆盖错误码与鉴权的接口用例

核心技能

Ubuntu环境软件测试工具部署

在Ubuntu中安装配置MySQL/应用/被测系统及Python/pytest/Postman/Jmeter等测试工具链

建议预留 80 分钟

学习目标

  • 在Ubuntu部署被测系统
  • 配置Python与测试工具链

关键概念

  • 环境部署
  • 工具安装
  • MySQL配置
  • 浏览器驱动
  • Python环境

为什么学习

  • 目标明确要求掌握Linux下测试工具配置,能部署被测相片系统与工具链是关键实操

如何检验理解

  • 能在Ubuntu上部署被测系统并装好pytest/Jmeter/Postman/浏览器驱动且验证可用

核心技能

单元测试与Mock桩技术

编写被测函数单测并通过mock隔离外部依赖,保障底层质量

建议预留 80 分钟

学习目标

  • 编写被测函数单元测试
  • 掌握mock隔离外部依赖

关键概念

  • 单元测试
  • Mock
  • 桩
  • 断言
  • 覆盖驱动

为什么学习

  • 目标要求熟练编写可维护自动化用例,mock隔离外部依赖是接口与功能测试的必备手法

如何检验理解

  • 能对含外部依赖的函数通过mock隔离并完成可重复的单测

核心技能

Postman接口测试实战

使用Postman构造请求、断言响应、环境管理与集合自动化

建议预留 60 分钟

学习目标

  • 用Postman构造并断言请求
  • 掌握环境管理与脚本化
  • 导出并复用测试集合

关键概念

  • Postman
  • 环境变量
  • 断言
  • 脚本
  • Collection

为什么学习

  • 接口测试工具Postman需达到熟练程度,可对相片系统各API进行环境切换与断言回归

如何检验理解

  • 能用Postman完成相片系统接口调试、环境变量、断言并导出Collection运行

核心技能

Linux日志查看与故障排查

使用grep/tail/journalctl等排查环境与运行异常,支撑测试问题定位

建议预留 55 分钟

学习目标

  • 用工具查看应用与系统日志
  • 基于日志定位与复现异常

关键概念

  • 日志查看
  • grep
  • tail
  • journalctl
  • 故障排查

为什么学习

  • 测试需在Ubuntu下定位应用异常与上报缺陷证据,是熟练环境排障的必备技能

如何检验理解

  • 能依据app与系统日志定位被测相片系统一次启动/运行异常的原因

核心技能

学期项目测试全流程整合

围绕相片管理系统项目需求将各测试层次整合为系统化测试方案与交付文档(3个月里程碑)

建议预留 90 分钟

学习目标

  • 产出相片系统完整测试方案
  • 完成设计与执行记录的文档化交付

关键概念

  • 测试方案
  • 测试设计说明
  • 测试记录
  • 测试总结
  • 相片管理系统

为什么学习

  • 3个月内针对相片系统输出完整测试方案与文档是硬性里程碑,需将用例设计与文档技能整体迁移应用

如何检验理解

  • 交付针对相片管理系统的测试计划、完整用例集、执行记录与缺陷报告

补充知识

覆盖率与静态质量评估

使用coverage工具评估语句/分支覆盖率并分析质量

建议预留 45 分钟

学习目标

  • 了解coverage基本用法
  • 能解读覆盖率报告

关键概念

  • 语句覆盖
  • 分支覆盖
  • coverage报告

为什么学习

  • 覆盖率有助于量化测试充分度,但对本阶段目标属辅助技能,降低难度仅需认识并可生成覆盖率报告

如何检验理解

  • 能用coverage生成一次覆盖率报告并解读语句/分支覆盖值

核心技能

集成测试与系统测试设计

设计模块间集成方案与端到端系统测试策略

建议预留 60 分钟

学习目标

  • 设计集成与系统测试策略
  • 规划端到端测试场景

关键概念

  • 集成测试
  • 系统测试
  • 端到端
  • 模块接口

为什么学习

  • 前后端分离项目需理解模块集成与端到端链路以设计接口与UI测试,是功能/性能测试前置

如何检验理解

  • 能针对相片系统设计登录-上传-检索的端到端测试流程

补充知识

白盒技术分析与数据驱动测试

运用路径覆盖与DDT参数化提升用例效率,向框架封装进阶

建议预留 50 分钟

学习目标

  • 理解数据驱动参数化
  • 认识路径覆盖思想

关键概念

  • 路径覆盖
  • 数据驱动
  • DDT
  • 参数化框架

为什么学习

  • 数据驱动是小范围框架封装进阶方向,本阶段作为脚本效率补充,降低难度

如何检验理解

  • 能用数据驱动方式批量运行pytest用例并理解其框架设计思路

核心技能

Web UI自动化测试(Selenium/pytest)

使用Selenium定位元素驱动浏览器执行界面回归测试

建议预留 80 分钟

学习目标

  • 用Selenium定位与交互元素
  • 实现浏览器界面回归

关键概念

  • Selenium
  • 元素定位
  • 显式等待
  • pytest集成
  • 浏览器驱动

为什么学习

  • 浏览器自动化是相片系统UI回归的重要方向,属推荐能力需能在项目中进行元素定位与交互

如何检验理解

  • 能编写Selenium脚本在Ubuntu Chrome上完成相片系统的登录与相册浏览自动化

核心技能

性能测试概念与指标模型

理解响应时间、吞吐量、并发与性能瓶颈分析基础

建议预留 55 分钟

学习目标

  • 理解性能核心指标
  • 掌握负载场景规划思路

关键概念

  • 响应时间
  • 吞吐量
  • 并发
  • QPS
  • 瓶颈分析

为什么学习

  • 相片系统接口压测需理解QPS/响应时间/并发模型以设计JMeter场景与解读结果

如何检验理解

  • 能解释性能指标含义并据此说明一个接口负载场景如何设定

核心技能

自动化测试框架与PO设计模式

搭建Page Object测试框架实现脚本分层与可维护性,向测试开发过渡

建议预留 80 分钟

学习目标

  • 掌握Page Object分层
  • 搭建自维护自动化框架雏形

关键概念

  • Page Object
  • 分层设计
  • 框架封装
  • 元素仓库

为什么学习

  • 框架封装与分层是测试开发转型核心,需能将PO模式迁移到相片系统项目封装可复用脚本

如何检验理解

  • 能搭建PO分层框架使相片系统的用例脚本页面层与用例层分离且可维护

核心技能

JMeter性能压测实战

配置线程组、监听器并执行负载/压力测试分析结果

建议预留 80 分钟

学习目标

  • 用JMeter执行接口/负载测试
  • 配置监听器并分析结果

关键概念

  • JMeter
  • 线程组
  • 参数化
  • 断言
  • 监听器
  • 负载测试

为什么学习

  • Jmeter需达到熟练进行接口与基础性能压测的程度,是针对相片系统的验证工具

如何检验理解

  • 能用JMeter对相片系统接口做参数化负载测试并在报告中定位瓶颈

补充知识

CI/CD持续集成与流水线

理解Jenkins/GitHub Actions并配置自动化测试执行流水线,走向测试开发

建议预留 60 分钟

学习目标

  • 理解持续集成思想
  • 配置触发测试的流水线

关键概念

  • Jenkins
  • GitHub Actions
  • 流水线
  • 自动化触发

为什么学习

  • CI/CD属测试开发nice_to_have进阶方向,本阶段认识并搭建demo流水线即可,后续深入

如何检验理解

  • 能配置一个触发自动化测试的简单Jenkins/GitHub Actions流水线

补充知识

回归测试与测试优先级策略

根据修改影响制定回归范围与用例优先级排序

建议预留 50 分钟

学习目标

  • 按影响面制定回归范围
  • 对用例进行优先级排序

关键概念

  • 回归范围
  • 用例优先级
  • 影响分析

为什么学习

  • 回归范围与优先级核心经验来自测试基本流程指导,作质量优化补充,降低难度

如何检验理解

  • 能依据一次改动说明待回归范围并给出用例优先级排序理由

核心技能

测试质量度量与报告编制

基于缺陷密度、用例通过率等指标编制质量评估报告

建议预留 60 分钟

学习目标

  • 运用质量指标度量测试
  • 编制结构化质量报告

关键概念

  • 缺陷密度
  • 用例通过率
  • 质量报告
  • 度量指标

为什么学习

  • 完整测试交付需用质量指标与报告总结,是项目文档化与沟通的必备产出

如何检验理解

  • 能汇总相片项目缺陷密度与通过率编制一份质量总结报告

补充知识

全栈测试复盘与缺陷分析优化

分析测试遗漏与缺陷根因并优化测试策略与质量闭环

建议预留 50 分钟

学习目标

  • 分析测试遗漏与缺陷根因
  • 提出策略优化方案

关键概念

  • 缺陷根因
  • 测试复盘
  • 策略优化
  • 质量闭环

为什么学习

  • 缺陷根因分析与策略优化属长期质量闭环进阶,作为精进方向降低难度

如何检验理解

  • 能复盘一轮测试找出遗漏点并给出针对性优化策略

前置关系与知识联系

结合互动地图查看具体关系类型,再选择下一步。