mcpField
S
shift-left-testing

shift-left-testing

github.com/proffesor-for-testing测试与质量520111 次安装今天更新
代码仓库

关于 shift-left-testing

帮助团队将质量检查前移的测试技能,涵盖需求验证、TDD、CI 测试和风险分析,并提供 Agent 协作指引。

主要功能

  1. 01检查需求可测试性
  2. 02编写 BDD 场景
  3. 03先写测试再实现
  4. 04每次提交运行测试
  5. 05设计阶段风险分析
  6. 06选择回归测试集

适用场景

  1. 01在需求细化时改进验收标准
  2. 02为新功能采用 TDD
  3. 03在 Pull Request 中运行单元测试
  4. 04按风险确定回归测试优先级

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill shift-left-testing

安装后在 Claude Code 中输入/shift-left-testing确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
shift-left-testing.yaml
schemas/
output.json
scripts/
validate-config.json

详细介绍

左移测试

<default_to_action> 实施早期测试实践时:

  1. 编码前验证需求(可测试性、BDD 场景)
  2. 实现前编写测试(TDD)
  3. 在 CI 流水线中自动化(每次提交都会触发测试)
  4. 立即修复缺陷,绝不让缺陷累积

快速了解左移级别:

  • 级别 1:每个 PR 都进行单元测试(开发者负责)
  • 级别 2:采用 TDD 实践(先写测试,再写代码)
  • 级别 3:在需求细化时进行 BDD/示例映射(需求测试)
  • 级别 4:在设计阶段进行风险分析(架构测试) </default_to_action>

快速参考卡

适用场景
  • 降低缺陷成本
  • 实施 CI/CD 流水线
  • 开始实践 TDD
  • 提高需求质量
左移级别
级别实践时机
1在 PR 中进行单元测试合并前
2TDD实现前
3BDD/示例映射需求细化期间
4风险分析设计期间

级别 1:每个 PR 都进行测试

# CI pipeline - tests run on every commit
name: CI
on: [push, pull_request]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm ci
      - run: npm run test:unit
      - run: npm run test:integration
      - run: npm run lint

  quality-gate:
    needs: test
    steps:
      - name: Coverage Check
        run: npx coverage-check --min 80
      - name: No New Warnings
        run: npm run lint -- --max-warnings 0

Agent 辅助左移

// Validate requirements testability
await Task("Requirements Validation", {
  requirements: userStories,
  check: ['INVEST-criteria', 'testability', 'ambiguity'],
  generateBDD: true
}, "qe-requirements-validator");

// Generate tests from requirements
await Task("Generate Tests", {
  source: 'requirements',
  types: ['unit', 'integration', 'e2e'],
  coverage: 'comprehensive'
}, "qe-test-generator");

// Smart test selection for changes
await Task("Select Regression Tests", {
  changedFiles: prFiles,
  algorithm: 'risk-based',
  targetReduction: 0.7  // 70% time savings
}, "qe-regression-risk-analyzer");

Agent 协作提示

记忆命名空间
aqe/shift-left/
├── requirements/*       - Validated requirements
├── generated-tests/*    - Auto-generated tests
├── coverage-targets/*   - Coverage goals by component
└── pipeline-results/*   - CI/CD test history
Fleet 协作
const shiftLeftFleet = await FleetManager.coordinate({
  strategy: 'shift-left',
  agents: [
    'qe-requirements-validator',     // Level 3-4
    'qe-test-generator',             // Level 2
    'qe-regression-risk-analyzer'    // Smart selection
  ],
  topology: 'sequential'
});

相关技能


请记住

借助 Agent: Agent 可验证需求的可测试性、根据规格生成测试,并选择最优回归测试套件。使用 Agent 一致地实施左移实践。

技能组合

  • TDD 实践 → 使用 /tdd-london-chicago 获取具体的 TDD 指引
  • 生成测试 → 使用 /qe-test-generation 进行 AI 驱动的测试生成
  • CI/CD 质量 → 使用 /cicd-pipeline-qe-orchestrator 设置流水线

注意事项

  • “左移”并不意味着“只测左边”——仍然需要生产环境监控(右移)
  • Agent 在理解需求前就生成测试——针对错误行为编写测试比不写测试更糟
  • 耗时超过 10 分钟的 CI 流水线测试会破坏反馈循环——将提交阶段的测试控制在 5 分钟以内
  • Agent 同时编写测试和代码时,TDD 纪律会减弱——确保 Red 阶段分离
  • 没有轻量级环境就左移,只会转移瓶颈——先解决环境问题

评论

支持 Markdown