shift-left-testing
About
This skill helps developers implement shift-left testing by moving validation and test creation earlier in the development lifecycle. It provides actionable steps for practices like TDD, BDD, and CI/CD integration to catch defects when they are cheapest to fix. Use it to structure your testing strategy with a focus on requirements validation, test-first development, and automated pipeline checks.
Documentation
Shift-Left Testing
<default_to_action> When implementing early testing practices:
- VALIDATE requirements before coding (testability, BDD scenarios)
- WRITE tests before implementation (TDD red-green-refactor)
- AUTOMATE in CI pipeline (every commit triggers tests)
- FOLLOW test pyramid: Many unit (70%), some integration (20%), few E2E (10%)
- 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
| Phase | Relative Cost | Example |
|---|---|---|
| Requirements | 1x | Fix doc: 30 min |
| Design | 5x | Redesign: few hours |
| Development | 10x | Code fix: 1 day |
| Testing | 20x | Fix + retest: 2 days |
| Production | 100x | Hotfix + rollback + investigation |
Test Pyramid
/\ E2E (10%) - Critical user journeys
/ \
/ \ Integration (20%) - Component interactions
/ \
/________\ Unit (70%) - Fast, isolated, comprehensive
Shift-Left Levels
| Level | Practice | When |
|---|---|---|
| 1 | Unit tests in PR | Before merge |
| 2 | TDD | Before implementation |
| 3 | BDD/Example Mapping | During refinement |
| 4 | Risk Analysis | During 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
- tdd-london-chicago - TDD practices
- holistic-testing-pact - Proactive testing
- cicd-pipeline-qe-orchestrator - Pipeline integration
- shift-right-testing - Production feedback
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.
Quick Install
/plugin add https://github.com/proffesor-for-testing/agentic-qe/tree/main/shift-left-testingCopy and paste this command in Claude Code to install this skill
GitHub 仓库
Related Skills
sparc-methodology
DevelopmentThe SPARC methodology provides a systematic development framework with 17 specialized modes for comprehensive software development from specification to completion. It integrates multi-agent orchestration to handle complex development workflows including architecture design, testing, and deployment. Use this skill when you need structured guidance throughout the entire development lifecycle with automated agent coordination.
Verification & Quality Assurance
OtherThis skill automatically verifies and scores the quality of code and agent outputs using a 0.95 accuracy threshold. It performs truth scoring, code correctness checks, and can instantly roll back changes that fail verification. Use it to ensure high-quality outputs and maintain codebase reliability in your development workflow.
github-workflow-automation
OtherThis Claude Skill automates GitHub Actions workflows with AI swarm coordination and intelligent CI/CD pipelines. It enables developers to create self-organizing, adaptive workflows for comprehensive repository management and deployment automation. Use it when you need advanced GitHub workflow orchestration with multi-agent AI coordination.
github-workflow-automation
OtherThis GitHub workflow automation skill enables developers to create intelligent CI/CD pipelines and self-organizing GitHub Actions workflows using AI swarm coordination. It provides comprehensive repository management and adaptive workflow orchestration for teams needing advanced automation. Use this skill when you want to implement sophisticated, AI-driven GitHub Actions with automated codebase analysis and workflow generation.
