🧱 二、四大核心能力域:构建你的能力金字塔
能力域 1:工程化思维(Engineering Mindset)
目标:写出可维护、可扩展、可协作的测试代码
关键实践:
模块化设计:
# bad: 所有逻辑堆在 test_xxx.py# good: 分层架构tests/ # 用例层(业务语言)├── api/│ └── test_user.pylib/ # 封装层(技术细节)├── api_client.py # 统一请求封装├── db_helper.py # 数据库操作utils/ # 工具层├── validators.py # 响应校验└── generators.py # 测试数据生成
配置驱动:环境、账号、URL 通过 config.yaml 管理
依赖注入:用 Pytest Fixture 管理资源,而非全局变量
学习资源:
《Clean Code》第 9 章:单元测试
Pytest 官方文档:Fixture 与插件机制
能力域 2:质量策略设计(Quality Strategy)
目标:用最少的测试覆盖最大的业务风险
关键实践:
分层测试金字塔:
70% 单元测试(Pytest + Mock) → 快速反馈
20% 接口测试(Requests + Schema 校验) → 覆盖核心链路
10% UI 测试(Selenium + 视频录制) → 关键用户旅程
精准测试:
用 Git diff 分析代码变更,只跑受影响用例
用历史缺陷数据,聚焦高风险模块
质量门禁:在 CI 中设置硬性规则
# .gitlab-ci.yml 示例
test:
script:
- pytest --cov=app --cov-fail-under=80 # 覆盖率 <80% 失败
- python check_performance.py # 性能退化 >10% 失败
学习资源:
Google Testing Blog:Test Automation Best Practices
《软件测试的艺术》第 5 章:测试策略
能力域 3:数据驱动质量(Data-Driven Quality)
目标:用数据说话,让质量可度量、可预测
关键实践:
构建质量指标体系:
用 Python 分析质量数据:
import pandas as pd# 分析缺陷趋势df = pd.read_csv("jira_defects.csv")monthly_escape = df.groupby(df["created"].dt.month)["escaped_to_prod"].mean()# 可视化monthly_escape.plot(kind="bar", title="月度缺陷逃逸率")
预测性质量:用历史数据训练简单模型预测高风险提交
学习资源:
《Metrics and Models in Software Quality Engineering》
Pandas 官方 10 分钟入门
能力域 4:技术纵深与广度(Technical Depth & Breadth)
目标:理解系统全貌,设计针对性测试方案
关键实践:
深入技术栈:
Web:理解 HTTP/HTTPS、Cookie/Session、CORS
数据库:掌握事务隔离级别、慢查询分析
云原生:熟悉 Docker 日志收集、K8s 健康检查
拓展测试边界:
安全测试:用 bandit 扫描 Python 代码,用 OWASP ZAP 测 Web 漏洞
性能测试:用 locust 编写分布式压测脚本
混沌工程:用 chaospy 模拟网络延迟、服务宕机
学习资源:
OWASP Web Security Testing Guide
《高性能 MySQL》第 6 章:查询性能优化