OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  tdd-guide:包含测试生成与覆盖率的 TDD 工作流

tdd-guide:包含测试生成与覆盖率的 TDD 工作流

 
  rocket ·  2026-02-02 09:02:29 · 23 次点击  · 0 条评论  

名称: tdd-guide
描述: 支持测试生成、覆盖率分析与多框架的测试驱动开发工作流
触发器:
- 生成测试
- 分析覆盖率
- TDD 工作流
- 红绿重构
- Jest 测试
- Pytest 测试
- JUnit 测试
- 覆盖率报告


TDD 指南

本技能支持测试驱动开发,能够生成测试用例、分析代码覆盖率,并指导在 Jest、Pytest、JUnit 和 Vitest 等框架下进行红-绿-重构工作流。

目录


核心能力

能力 描述
测试生成 将需求或代码转换为结构化的测试用例
覆盖率分析 解析 LCOV/JSON/XML 报告,识别覆盖缺口,并优先修复
TDD 工作流 指导并验证红-绿-重构循环
框架适配器 为 Jest、Pytest、JUnit、Vitest、Mocha 生成测试
质量评分 评估测试隔离性、断言、命名规范,检测测试异味
夹具生成 创建真实的测试数据、模拟对象和工厂

工作流程

从代码生成测试

  1. 提供源代码(TypeScript、JavaScript、Python、Java)
  2. 指定目标框架(Jest、Pytest、JUnit、Vitest)
  3. 运行 test_generator.py 并附带需求
  4. 审查生成的测试桩
  5. 验证: 测试可编译,并覆盖正常路径、错误情况和边界情况

分析覆盖率缺口

  1. 从测试运行器生成覆盖率报告(例如 npm test -- --coverage
  2. 在 LCOV/JSON/XML 报告上运行 coverage_analyzer.py
  3. 审查按优先级(P0/P1/P2)排序的覆盖缺口
  4. 为未覆盖的路径生成缺失的测试
  5. 验证: 覆盖率达到目标阈值(通常为 80% 以上)

TDD 开发新功能

  1. 首先编写失败的测试(红)
  2. 运行 tdd_workflow.py --phase red 进行验证
  3. 实现最少量代码使测试通过(绿)
  4. 运行 tdd_workflow.py --phase green 进行验证
  5. 在保持测试通过的前提下重构代码(重构)
  6. 验证: 每个循环后所有测试均通过

工具集

工具 用途 用法示例
test_generator.py 根据代码/需求生成测试用例 python scripts/test_generator.py --input source.py --framework pytest
coverage_analyzer.py 解析和分析覆盖率报告 python scripts/coverage_analyzer.py --report lcov.info --threshold 80
tdd_workflow.py 指导红-绿-重构循环 python scripts/tdd_workflow.py --phase red --test test_auth.py
framework_adapter.py 在不同测试框架间转换测试 python scripts/framework_adapter.py --from jest --to pytest
fixture_generator.py 生成测试数据和模拟对象 python scripts/fixture_generator.py --entity User --count 5
metrics_calculator.py 计算测试质量指标 python scripts/metrics_calculator.py --tests tests/
format_detector.py 检测语言和框架 python scripts/format_detector.py --file source.ts
output_formatter.py 为 CLI/桌面/CI 格式化输出 python scripts/output_formatter.py --format markdown

输入要求

对于测试生成:
- 源代码(文件路径或粘贴的内容)
- 目标框架(Jest、Pytest、JUnit、Vitest)
- 覆盖范围(单元测试、集成测试、边界情况)

对于覆盖率分析:
- 覆盖率报告文件(LCOV、JSON 或 XML 格式)
- (可选)用于上下文的源代码
- (可选)目标阈值百分比

对于 TDD 工作流:
- 功能需求或用户故事
- 当前阶段(红、绿、重构)
- 测试代码和实现状态


局限性

范围 详情
侧重单元测试 集成测试和端到端测试需要不同的模式
静态分析 无法执行测试或测量运行时行为
语言支持 最适合 TypeScript、JavaScript、Python、Java
报告格式 仅支持 LCOV、JSON、XML;其他格式需要转换
生成的测试 提供脚手架;复杂逻辑需要人工审查

何时使用其他工具:
- 端到端测试:Playwright、Cypress、Selenium
- 性能测试:k6、JMeter、Locust
- 安全测试:OWASP ZAP、Burp Suite

23 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 16 ms
Developed with Cursor