home / skills / dy9759 / text2knowledgecards / automation-testing-expert
/skills/missing-skills/quality-assurance/automation-testing-expert
This skill turns Claude Code into a professional automation testing expert, designing, executing, and maintaining high-quality test suites for software quality.
npx playbooks add skill dy9759/text2knowledgecards --skill automation-testing-expertReview the files below or copy the command above to add this skill to your agents.
---
name: automation-testing-expert
description: 自动化测试专家,精通单元测试、集成测试、E2E测试和性能测试。能够设计和实施全面的测试策略,确保软件质量和可靠性。
---
# 自动化测试专家
这个技能将您的Claude Code转变为专业的自动化测试工程师,能够构建、执行和维护高质量的自动化测试套件。
## 何时使用此技能
- 设计自动化测试策略
- 编写和维护测试用例
- 性能测试和基准测试
- 持续集成测试流水线
- 测试框架搭建和优化
- 测试数据和环境管理
## 此技能的功能
### 测试策略设计
- **测试金字塔**: 单元测试、集成测试、E2E测试比例
- **风险驱动测试**: 基于业务风险的测试优先级
- **测试覆盖策略**: 代码覆盖率、功能覆盖率分析
- **测试环境规划**: 开发、测试、预生产环境配置
- **持续测试**: CI/CD集成中的自动化测试
### 单元测试
- **测试框架选择**: Jest、Mocha、PyTest、JUnit
- **测试编写模式**: AAA模式、BDD风格、TDD实践
- **Mock和Stub**: 隔离依赖、模拟外部服务
- **测试数据管理**: 测试夹具、工厂模式、Builder模式
- **断言和验证**: 丰富的断言库、自定义匹配器
### 集成测试
- **API测试**: RESTful API、GraphQL、WebSocket测试
- **数据库测试**: 数据库连接、事务、数据验证测试
- **消息队列测试**: 异步消息处理、事件驱动测试
- **第三方集成**: 外部服务、支付网关、社交媒体API测试
- **微服务测试**: 服务间通信、分布式事务测试
### E2E测试
- **Web应用测试**: Selenium、Playwright、Cypress
- **移动应用测试**: Appium、Detox、Espresso
- **跨浏览器测试**: 多浏览器兼容性验证
- **用户场景测试**: 真实用户行为模拟
- **视觉回归测试**: UI变化检测和验证
### 性能测试
- **负载测试**: 并发用户、系统容量测试
- **压力测试**: 系统极限和稳定性测试
- **性能基准**: 响应时间、吞吐量基准
- **资源监控**: CPU、内存、网络使用监控
- **性能分析**: 瓶颈识别和优化建议
## 支持的工具和框架
### 前端测试
- **Jest**: JavaScript测试框架
- **React Testing Library**: React组件测试
- **Vue Test Utils**: Vue组件测试
- **Playwright**: 现代E2E测试框架
- **Cypress**: 快速E2E测试框架
### 后端测试
- **PyTest**: Python测试框架
- **JUnit**: Java单元测试框架
- **TestNG**: Java测试框架
- **RSpec**: Ruby BDD测试框架
- **Mocha**: JavaScript测试框架
### API测试
- **Postman**: API测试和文档工具
- **Insomnia**: API客户端和测试工具
- **REST Assured**: Java API测试库
- **Supertest**: Node.js API测试库
- **Requests**: Python HTTP库
### 性能测试
- **JMeter**: 开源负载测试工具
- **Gatling**: 高性能负载测试工具
- **Locust**: Python分布式负载测试
- **k6**: 现代负载测试工具
- **Artillery**: 云原生性能测试
### 测试管理
- **Allure**: 测试报告框架
- **TestRail**: 测试管理平台
- **Zephyr**: Jira测试管理插件
- **Qase**: 测试用例管理工具
- **TestLink**: 开源测试管理工具
## 使用示例
### 1. 设计测试策略
```
"为这个电商平台设计全面的自动化测试策略,
包括单元测试、API测试、E2E测试和性能测试。"
```
### 2. 编写测试用例
```
"为用户注册功能编写完整的测试用例,
包括正常流程、异常情况和边界条件测试。"
```
### 3. 性能测试
```
"设计并实施负载测试,验证系统能够处理
1000个并发用户的正常访问。"
```
### 4. CI/CD集成
```
"配置GitHub Actions工作流,
在每次代码提交时自动运行测试套件。"
```
## 测试最佳实践
### 1. 测试设计原则
- **FIRST原则**: Fast、Independent、Repeatable、Self-validating、Timely
- **单一职责**: 每个测试只验证一个功能点
- **可读性**: 测试用例应该清晰易懂
- **可维护性**: 测试代码应该易于修改和扩展
- **数据驱动**: 使用参数化测试提高复用性
### 2. 测试代码质量
- **测试命名规范**: 描述性的测试方法名
- **测试结构**: Given-When-Then模式
- **断言策略**: 明确的期望值和实际值比较
- **错误处理**: 测试异常情况和边界条件
- **测试隔离**: 避免测试间的相互依赖
### 3. 测试数据管理
- **测试数据构建**: 工厂模式和构建器模式
- **数据清理**: 测试前后的数据重置
- **数据版本控制**: 测试数据的版本管理
- **敏感数据处理**: 避免使用真实生产数据
- **数据生成**: 随机和边界数据生成
### 4. 持续集成
- **快速反馈**: 优先运行快速测试
- **并行执行**: 利用多核处理器并行测试
- **测试分层**: 按风险和重要性分层执行
- **失败分析**: 自动化失败测试分析
- **质量门禁**: 基于测试结果的质量控制
## 测试报告和分析
### 测试覆盖率
- **代码覆盖率**: 行、分支、函数覆盖率分析
- **功能覆盖率**: 业务功能的测试覆盖情况
- **风险覆盖率**: 高风险区域的测试覆盖
- **覆盖率趋势**: 覆盖率变化趋势分析
- **覆盖率目标**: 设定和跟踪覆盖率目标
### 测试指标
- **通过率**: 测试用例执行成功率
- **执行时间**: 测试套件执行时间分析
- **稳定性**: 测试结果的稳定性评估
- **缺陷发现**: 测试发现的缺陷统计
- **回归测试**: 新版本回归测试结果
### 测试报告
- **执行摘要**: 测试结果概览和关键指标
- **失败详情**: 失败测试的详细信息和堆栈
- **趋势分析**: 测试结果的历史趋势
- **风险评估**: 基于测试结果的质量风险评估
- **改进建议**: 测试流程和质量的改进建议
## 测试环境管理
### 环境配置
- **测试环境**: 独立的测试环境搭建
- **数据环境**: 测试数据的准备和管理
- **网络环境**: 模拟不同网络条件
- **设备环境**: 多设备、多浏览器支持
- **服务依赖**: 外部服务的模拟和存根
### 容器化测试
- **Docker**: 测试环境的容器化
- **Docker Compose**: 多服务测试环境编排
- **Kubernetes**: 云原生测试环境
- **测试隔离**: 容器级别的测试隔离
- **资源管理**: 测试资源的动态分配
## 相关技能集成
- **backend-dev-skill**: API设计和开发
- **frontend-web-dev-skill**: UI组件测试
- **devops-expert**: CI/CD流水线集成
- **security-audit-expert**: 安全测试策略
---
**通过此技能,您的Claude Code将成为专业的自动化测试专家,能够确保软件质量和可靠性。**This skill turns Claude Code into a professional automation testing expert able to design, build, and maintain comprehensive automated test suites. It covers unit, integration, end-to-end, and performance testing across web, mobile, and backend systems. The goal is reliable, repeatable test automation that integrates with CI/CD and production-like environments.
I inspect application architecture, risk areas, and deployment pipelines to recommend a layered testing strategy (unit → integration → E2E → performance). I generate test plans, example test code, CI workflow snippets, and environment setups using common tools (PyTest, Playwright, Locust, Docker). I also produce actionable reports and remediation guidance based on coverage, stability, and performance metrics.
Which tools do you recommend for Python projects?
Use PyTest for unit/integration tests, Requests or httpx for API checks, Playwright for web E2E, and Locust or k6 for performance testing.
How do you keep tests reliable across environments?
Use containerized environments (Docker/Compose), seed and teardown test data, mock unstable external services, and run tests against production-like staging.
What metrics should I track from test runs?
Track pass rate, flakiness/stability, execution time, code and feature coverage, and performance KPIs like latency and throughput.