mcpField
Q
qe-shift-left-testing

qe-shift-left-testing

github.com/proffesor-for-testingTesting & quality51990 installsUpdated today
Repository

About qe-shift-left-testing

qe-shift-left-testing is a skill for teams bringing testing earlier into development, from requirements and design through implementation and CI. It outlines TDD, BDD, risk analysis, automated tests, and agent-assisted requirement validation and test generation.

Key features

  1. 01Validate requirements for testability
  2. 02Write tests before implementation
  3. 03Automate tests in CI
  4. 04Apply the test pyramid
  5. 05Analyze design risks
  6. 06Generate tests from specifications

Use cases

  1. 01Check requirements during refinement
  2. 02Practice TDD before coding
  3. 03Run automated tests on every commit
  4. 04Assess risks during architecture design

Install

Copy the command and run it in a terminal.

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

After installing, type/qe-shift-left-testingin Claude Code to confirm it loaded.

Details

From the project README

Shift-Left Testing

<default_to_action> When implementing early testing practices:

  1. VALIDATE requirements before coding (testability, BDD scenarios)
  2. WRITE tests before implementation (TDD red-green-refactor)
  3. AUTOMATE in CI pipeline (every commit triggers tests)
  4. FOLLOW test pyramid: Many unit (70%), some integration (20%), few E2E (10%)
  5. FIX defects immediately - never let them accumulate

Quick Shift-Left Levels:

  • Level 1: Unit tests with each PR (developer responsibility)
  • Level 2: TDD practice (tests before code)
  • Level 3: BDD/Example mapping in refinement (requirements testing)
  • Level 4: Risk analysis in design (architecture testing)

Critical Success Factors:

  • Defects found in requirements cost 1x; in production cost 100x
  • Every commit must run automated tests
  • Quality is built in, not tested in </default_to_action>

Quick Reference Card

When to Use
  • Reducing cost of defects
  • Implementing CI/CD pipelines
  • Starting TDD practice
  • Improving requirements quality
Cost of Defects by Phase
PhaseRelative CostExample
Requirements1xFix doc: 30 min
Design5xRedesign: few hours
Development10xCode fix: 1 day
Testing20xFix + retest: 2 days
Production100xHotfix + rollback + investigation
Test Pyramid
       /\        E2E (10%) - Critical user journeys
      /  \
     /    \      Integration (20%) - Component interactions
    /      \
   /________\    Unit (70%) - Fast, isolated, comprehensive
Shift-Left Levels
LevelPracticeWhen
1Unit tests in PRBefore merge
2TDDBefore implementation
3BDD/Example MappingDuring refinement
4Risk AnalysisDuring design

Level 1: Tests in Every 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

Level 2: TDD Practice

// Red: Write failing test first
test('calculates discount for orders over $100', () => {
  const order = new Order([{ price: 150 }]);
  expect(order.discount).toBe(15); // 10% off
});

// Green: Minimal implementation
class Order {
  get discount() {
    return this.total > 100 ? this.total * 0.1 : 0;
  }
}

// Refactor: Improve while keeping green

Level 3: BDD in Refinement

# Example mapping before coding
Feature: Loyalty Discount
  Scenario: Gold member gets 15% discount
    Given a customer with "gold" membership
    When they checkout with $200 in cart
    Then discount applied is $30
    And order total is $170

  Scenario: New customer gets no discount
    Given a customer with no membership
    When they checkout with $200 in cart
    Then no discount is applied

Level 4: Risk Analysis in Design

// During architecture review
await Task("Risk Analysis", {
  phase: 'design',
  component: 'payment-service',
  questions: [
    'What happens when payment gateway times out?',
    'How do we handle duplicate submissions?',
    'What if inventory changed during checkout?'
  ]
}, "qe-requirements-validator");

// Output: Testability requirements, failure mode tests

Agent-Assisted Shift-Left

// 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 Coordination Hints

Memory Namespace
aqe/shift-left/
├── requirements/*       - Validated requirements
├── generated-tests/*    - Auto-generated tests
├── coverage-targets/*   - Coverage goals by component
└── pipeline-results/*   - CI/CD test history
Fleet Coordination
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'
});

Related Skills


Remember

Earlier = Cheaper. Requirements defects cost 1x; production defects cost 100x. Test pyramid: 70% unit, 20% integration, 10% E2E. Every commit runs tests. TDD builds quality in.

With Agents: Agents validate requirements testability, generate tests from specs, and select optimal regression suites. Use agents to implement shift-left practices consistently.

Comments

Markdown supported