
Bmad Teach Me Testing
- 6 installs
- 87 repo stars
- Updated August 4, 2026
- bmad-code-org/bmad-method-test-architecture-enterprise
bmad-teach-me-testing is a Claude Code skill that teaches testing progressively through self-paced, resumable sessions using the TEA methodology.
About
bmad-teach-me-testing is a BMAD Method skill that teaches testing progressively through structured, self-paced sessions. It uses a continuable architecture that persists state across sessions so learners can pause, resume, and jump to any session based on experience over one to two weeks. Developers use it when they want to learn testing or study test practices, individually or across a team.
- Self-paced, multi-session learning that teaches testing fundamentals through advanced practices
- Continuable architecture with state persistence so learners can pause and resume across sessions
- Scalable to entire teams without requiring instructor time
Bmad Teach Me Testing by the numbers
- 6 all-time installs (skills.sh)
- Ranked #1,591 of 2,153 Testing & QA skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
bmad-teach-me-testing capabilities & compatibility
- Capabilities
- testing education · curriculum
- Use cases
- testing · documentation
What bmad-teach-me-testing says it does
Teach testing progressively through structured sessions.
Provide self-paced, multi-session learning that teaches testing fundamentals through advanced practices, scalable to entire teams without requiring instructor time.
This workflow uses continuable architecture with state persistence across sessions.
Users can pause and resume anytime, jump to any session based on experience, and learn at their own pace over 1-2 weeks.
npx skills add https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise --skill bmad-teach-me-testingAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 6 |
|---|---|
| repo stars | ★ 87 |
| Last updated | August 4, 2026 |
| Repository | bmad-code-org/bmad-method-test-architecture-enterprise ↗ |
What it does
Learn testing progressively from fundamentals to advanced practices through self-paced, resumable sessions.
Who is it for?
Learning testing fundamentals through advanced practices at your own pace
Skip if: Generating or running an actual test suite
When should I use this skill?
The user says 'lets learn testing' or 'I want to study test practices'
What you get
Self-paced testing knowledge built progressively with state preserved across sessions.
By the numbers
- 1-2 week self-paced program
- tri-modal step structure (create, edit, validate)
Files
Teach Me Testing — TEA Academy
Goal: Provide self-paced, multi-session learning that teaches testing fundamentals through advanced practices, scalable to entire teams without requiring instructor time.
Role: In addition to your name, communication_style, and persona, you are also a Master Test Architect and Teaching Guide collaborating with learners at all levels. This is a partnership, not a lecture. You bring expertise in TEA methodology, testing principles, and teaching pedagogy, while the learner brings their role context, experience, and learning goals. Work together to build their testing knowledge progressively.
Meta-Context: This workflow uses continuable architecture with state persistence across sessions. Users can pause and resume anytime, jump to any session based on experience, and learn at their own pace over 1-2 weeks.
You will continue to operate with your given name, identity, and communication_style, merged with the details of this role description.
Conventions
- Bare paths (e.g.
instructions.md) resolve from the skill root. {skill-root}resolves to this skill's installed directory (wherecustomize.tomllives).{project-root}-prefixed paths resolve from the project working directory.{skill-name}resolves to the skill directory's basename.- Resolve sibling workflow files such as
instructions.md,checklist.md,steps-c/...,steps-e/...,steps-v/..., and templates from{skill-root}.
On Activation
Step 1: Resolve the Workflow Block
Run: python3 {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --key workflow
If the script fails, resolve the workflow block yourself by reading these three files in base → team → user order and applying the same structural merge rules as the resolver:
1. {skill-root}/customize.toml — defaults 2. {project-root}/_bmad/custom/{skill-name}.toml — team overrides 3. {project-root}/_bmad/custom/{skill-name}.user.toml — personal overrides
Any missing file is skipped. Scalars override, tables deep-merge, arrays of tables keyed by code or id replace matching entries and append new entries, and all other arrays append.
Step 2: Execute Prepend Steps
Execute each entry in {workflow.activation_steps_prepend} in order before proceeding.
Step 3: Load Persistent Facts
Treat every entry in {workflow.persistent_facts} as foundational context you carry for the rest of the workflow run. Entries prefixed file: are paths or globs resolved from {project-root} — expand them and load every matching file in lexical path order as facts. All other entries are facts verbatim.
Step 4: Load Config
Load config from {project-root}/_bmad/tea/config.yaml and resolve:
user_nameproject_namecommunication_languagetest_artifacts
Step 5: Greet the User
Greet {user_name}, speaking in {communication_language}.
Step 6: Execute Append Steps
Execute each entry in {workflow.activation_steps_append} in order.
Activation is complete. Begin the workflow below.
Workflow Architecture
This uses step-file architecture for disciplined execution:
Core Principles
- Micro-file Design: Each step is a self-contained instruction file that is part of an overall workflow that must be followed exactly
- Just-In-Time Loading: Only the current step file is in memory — never load future step files until told to do so
- Sequential Enforcement: Sequence within the step files must be completed in order, no skipping or optimization allowed
- State Tracking: Document progress in progress file using
stepsCompletedarray and session tracking - Continuable Sessions: Users can pause after any session and resume later with full context preserved
- Tri-Modal Structure: Separate step folders for Create (steps-c/), Edit (steps-e/), and Validate (steps-v/) modes
Step Processing Rules
1. READ COMPLETELY: Always read the entire step file before taking any action 2. FOLLOW SEQUENCE: Execute all numbered sections in order, never deviate 3. WAIT FOR INPUT: If a menu is presented, halt and wait for user selection 4. CHECK CONTINUATION: If the step has a menu with Continue as an option, only proceed to next step when user selects 'C' (Continue) 5. SAVE STATE: Update stepsCompleted and session tracking in progress file before loading next step 6. LOAD NEXT: When directed, load, read entire file, then execute the next step file
Critical Rules (NO EXCEPTIONS)
- 🛑 NEVER load multiple step files simultaneously
- 📖 ALWAYS read entire step file before execution
- 🚫 NEVER skip steps or optimize the sequence
- 💾 ALWAYS update progress file after each session completion
- 🎯 ALWAYS follow the exact instructions in the step file
- ⏸️ ALWAYS halt at menus and wait for user input
- 📋 NEVER create mental todo lists from future steps
- ✅ ALWAYS communicate in
{communication_language}
Initialization Sequence
1. Mode Determination
Check if mode was specified in the command invocation:
- If user invoked with "create" or "teach" or "learn" or "start" or "resume" or "continue" → Set mode to create
- If user invoked with "validate" or "review" or "-v" or "--validate" → Set mode to validate
- If user invoked with "edit" or "modify" or "-e" or "--edit" → Set mode to edit
If mode is still unclear, ask user:
"Welcome to TEA Academy! What would you like to do?
[C]reate — Start learning sessions (new or continue existing progress) [V]alidate — Review workflow quality and generate validation report [E]dit — Modify workflow content or structure
Please select: [C]reate / [V]alidate / [E]dit"
2. Route to First Step
IF mode == create: Load, read the full file, and then execute {skill-root}/steps-c/step-01-init.md to begin the teaching workflow.
IF mode == validate: Prompt for workflow path (if validating the workflow itself): "Which workflow would you like to validate?" Then load, read the full file, and then execute {skill-root}/steps-v/step-v-01-validate.md.
IF mode == edit: Prompt for what to edit: "What would you like to edit in the teaching workflow?" Then load, read the full file, and then execute {skill-root}/steps-e/step-e-01-assess-workflow.md.
Teach Me Testing - Quality Checklist
Workflow Quality Standards
Use this checklist to validate the teaching workflow meets quality standards.
---
Foundation Quality
- [ ] SKILL.md exists with proper frontmatter
- [ ] customize.toml defines activation hooks and persistent facts
- [ ] Tri-modal routing logic present (Create/Edit/Validate)
- [ ] Configuration loading references correct module (TEA)
- [ ] First step path correct (
{skill-root}/steps-c/step-01-init.md) - [ ] Folder structure complete (steps-c/, steps-e/, steps-v/, data/, templates/)
---
Template Quality
- [ ] progress-template.yaml has complete schema
- [ ] All 7 sessions defined with proper structure
- [ ] Session status tracking fields present (not-started/in-progress/completed)
- [ ] stepsCompleted array for continuation tracking
- [ ] session-notes-template.md has all required sections
- [ ] certificate-template.md includes all 7 sessions
---
Step File Quality (CREATE mode)
Initialization Steps
- [ ] step-01-init.md checks for existing progress file
- [ ] Continuation detection logic works correctly
- [ ] step-01b-continue.md loads progress and routes to session menu
- [ ] Progress dashboard displays completion status
Assessment Step
- [ ] step-02-assess.md gathers role, experience, goals
- [ ] Validation for role (QA/Dev/Lead/VP)
- [ ] Validation for experience (beginner/intermediate/experienced)
- [ ] Assessment data written to progress file
Session Menu Hub
- [ ] step-03-session-menu.md displays all 7 sessions
- [ ] Completion indicators shown (✓ completed, 🔄 in-progress, ⬜ not-started)
- [ ] Branching logic routes to selected session (1-7)
- [ ] Exit logic (X) routes to completion if all done, otherwise saves and exits
Session Steps (1-7)
- [ ] Each session loads relevant TEA docs just-in-time
- [ ] Teaching content presented (mostly autonomous)
- [ ] Quiz validation with ≥70% threshold
- [ ] Session notes artifact generated
- [ ] Progress file updated (status, score, artifact path)
- [ ] Returns to session menu hub after completion
Completion Step
- [ ] step-05-completion.md verifies all 7 sessions complete
- [ ] Certificate generated with accurate data
- [ ] Final progress file update (certificate_generated: true)
- [ ] Congratulations message shown
---
Data File Quality
- [ ] curriculum.yaml defines all 7 sessions
- [ ] role-paths.yaml maps role customizations
- [ ] session-content-map.yaml references TEA docs/fragments/URLs correctly
- [ ] quiz-questions.yaml has questions for all sessions
- [ ] tea-resources-index.yaml has complete documentation index
---
Content Quality
TEA Documentation Integration
- [ ] Local file paths correct (
/docs/*.md,/src/agents/bmad-tea/resources/knowledge/*.md) - [ ] Online URLs correct (<https://bmad-code-org.github.io/...>)
- [ ] GitHub fragment links correct
- [ ] Triple reference system (local + online + GitHub) implemented
Role-Based Content
- [ ] QA examples present (practical testing focus)
- [ ] Dev examples present (integration/TDD focus)
- [ ] Lead examples present (architecture/patterns focus)
- [ ] VP examples present (strategy/metrics focus)
Quiz Quality
- [ ] Questions test understanding, not memorization
- [ ] 3-5 questions per session
- [ ] Mix of difficulty levels
- [ ] Clear correct answers with explanations
---
Error Handling
- [ ] Corrupted progress file detection
- [ ] Backup and recovery options
- [ ] Missing TEA docs fallback (Web-Browsing)
- [ ] Quiz failure recovery (review or continue)
- [ ] Session interruption handling (auto-save)
---
User Experience
- [ ] Clear navigation instructions
- [ ] Progress visibility (completion percentage, next recommended)
- [ ] Auto-save after each session
- [ ] Resume capability works seamlessly
- [ ] Exit options clear at all decision points
---
State Management
- [ ] stepsCompleted array updated correctly
- [ ] Session tracking accurate (status, dates, scores)
- [ ] Completion percentage calculated correctly
- [ ] Next recommended session logic works
- [ ] lastStep and lastContinued timestamps updated
---
Validation Mode
- [ ] step-v-01-validate.md checks all quality standards
- [ ] Generates validation report
- [ ] Identifies issues clearly
- [ ] Provides remediation suggestions
---
Edit Mode
- [ ] step-e-01-assess-workflow.md identifies what to edit
- [ ] step-e-02-apply-edits.md applies modifications safely
- [ ] Preserves workflow integrity during edits
---
Documentation
- [ ] instructions.md clear and complete
- [ ] checklist.md (this file) comprehensive
- [ ] README (if present) accurate
- [ ] Inline comments in complex logic
---
Performance
- [ ] Just-in-time loading (not loading all docs upfront)
- [ ] Session steps complete in reasonable time (<5 min)
- [ ] Quiz validation fast (<1 min)
- [ ] Progress file writes efficient
---
Security
- [ ] No hardcoded credentials
- [ ] File paths use variables
- [ ] Progress files private to user
- [ ] No sensitive data in session notes
---
Completion Criteria
✅ Workflow is ready for deployment when:
- All checkboxes above are checked
- All step files exist and follow standards
- All templates present and correct
- Data files complete and accurate
- Error handling robust
- User experience smooth
- Documentation complete
---
Validation Date: *\\*\_\_\_\\ Validated By: \\\_\_\_\\ Issues Found: \\\_\_\_\\ Status:** ⬜ Ready for Production | ⬜ Needs Revisions
# DO NOT EDIT -- overwritten on every update.
#
# Workflow customization surface for bmad-teach-me-testing. Mirrors the
# agent customization shape under the [workflow] namespace.
[workflow]
# --- Configurable below. Overrides merge per BMad structural rules: ---
# scalars: override wins • arrays (persistent_facts, activation_steps_*): append
# Steps to run before the standard activation (config load, greet).
# Overrides append. Use for pre-flight loads, compliance checks, etc.
activation_steps_prepend = []
# Steps to run after greet but before the workflow begins.
# Overrides append. Use for context-heavy setup that should happen
# once the user has been acknowledged.
activation_steps_append = []
# Persistent facts the workflow keeps in mind for the whole run
# (testing standards, framework conventions, learning objectives).
# Distinct from the runtime memory sidecar — these are static context
# loaded on activation. Overrides append.
#
# Each entry is either:
# - a literal sentence, e.g. "Every test must run deterministically in CI."
# - a file reference prefixed with `file:`, e.g. "file:{project-root}/docs/test-standards.md"
# (glob patterns are supported; matching files load in lexical path order as facts).
persistent_facts = [
"file:{project-root}/**/project-context.md",
]
# Scalar: executed when the workflow reaches its terminal step in any
# mode (create, validate, edit), after the final outputs are produced.
# Override wins. Leave empty for no custom post-completion behavior.
on_complete = ""
# TEA Academy Curriculum Structure
# Defines the 7-session learning path with objectives and content mappings
sessions:
- id: session-01-quickstart
name: "Quick Start"
duration: "30 min"
difficulty: beginner
objective: "Get immediate value by seeing TEA in action"
description: "TEA Lite intro, run automate workflow, understand engagement models"
recommended_for:
- beginner
- intermediate
- experienced
prerequisites: []
- id: session-02-concepts
name: "Core Concepts"
duration: "45 min"
difficulty: beginner
objective: "Understand WHY behind TEA principles"
description: "Risk-based testing, DoD, testing as engineering philosophy"
recommended_for:
- beginner
- intermediate
prerequisites: []
- id: session-03-architecture
name: "Architecture & Patterns"
duration: "60 min"
difficulty: intermediate
objective: "Understand TEA patterns and architecture"
description: "Fixtures, network-first patterns, data factories, step-file architecture"
recommended_for:
- intermediate
- experienced
prerequisites:
- session-02-concepts
- id: session-04-test-design
name: "Test Design"
duration: "60 min"
difficulty: intermediate
objective: "Learn risk assessment and coverage planning"
description: "Test Design workflow, risk/testability assessment, coverage planning"
recommended_for:
- intermediate
- experienced
prerequisites:
- session-02-concepts
- id: session-05-atdd-automate
name: "ATDD & Automate"
duration: "60 min"
difficulty: intermediate
objective: "Generate tests with TDD red-green approach"
description: "ATDD workflow (red phase), Automate workflow, component TDD, API testing"
recommended_for:
- intermediate
- experienced
prerequisites:
- session-02-concepts
- id: session-06-quality-trace
name: "Quality & Trace"
duration: "45 min"
difficulty: intermediate
objective: "Audit quality and ensure traceability"
description: "Test Review (5 dimensions), Trace workflow, quality metrics"
recommended_for:
- intermediate
- experienced
prerequisites:
- session-02-concepts
- id: session-07-advanced
name: "Advanced Patterns"
duration: "ongoing"
difficulty: advanced
objective: "Deep-dive into specific knowledge fragments"
description: "Menu-driven exploration of 42 knowledge fragments organized by category"
recommended_for:
- experienced
prerequisites: []
# Learning Paths by Experience Level
learning_paths:
beginner:
recommended_sequence:
- session-01-quickstart
- session-02-concepts
- session-03-architecture
- session-04-test-design
- session-05-atdd-automate
- session-06-quality-trace
- session-07-advanced
skip_optional: []
intermediate:
recommended_sequence:
- session-01-quickstart
- session-02-concepts
- session-03-architecture
- session-04-test-design
- session-05-atdd-automate
- session-06-quality-trace
- session-07-advanced
skip_optional:
- session-01-quickstart # Can skip if already familiar
certificate_eligible_if_skipped: false
experienced:
recommended_sequence:
- session-02-concepts
- session-03-architecture
- session-04-test-design
- session-05-atdd-automate
- session-06-quality-trace
- session-07-advanced
skip_optional:
- session-01-quickstart
certificate_eligible_if_skipped: false
# Completion Requirements
completion:
minimum_sessions: 7 # All sessions required for certificate
passing_score: 70 # Minimum quiz score to pass session
average_score_threshold: 70 # Minimum average for certificate
certificate_note: "Certificate eligibility requires completion.minimum_sessions. If intermediate.skip_optional or experienced.skip_optional sessions are skipped, certificate eligibility is forfeited."
# Quiz Questions Bank
# Organized by session with questions, answers, and explanations
session-01-quickstart:
passing_score: 70
questions:
- id: q1-purpose
question: "What is the primary purpose of TEA?"
options:
A: "Replace all testing tools with a single framework"
B: "Make testing expertise accessible through structured workflows and knowledge"
C: "Automate 100% of test writing"
D: "Only works for Playwright tests"
correct: B
explanation: "TEA makes testing expertise accessible and scalable through workflows and knowledge fragments. It's not about replacing tools or automating everything."
- id: q2-risk-matrix
question: "What does the P0-P3 risk matrix help with?"
options:
A: "Prioritizing test coverage based on criticality"
B: "Grading test code quality"
C: "Measuring test execution speed"
D: "Tracking bug severity"
correct: A
explanation: "P0-P3 helps prioritize what to test based on risk (Probability × Impact). P0 = critical features like login, P3 = nice-to-have like tooltips."
- id: q3-engagement
question: "Which TEA engagement model is best for quick value in 30 minutes?"
options:
A: "TEA Enterprise"
B: "TEA Lite"
C: "TEA Integrated"
D: "TEA Brownfield"
correct: B
explanation: "TEA Lite is the 30-minute quick start approach. Enterprise and Integrated are more comprehensive."
session-02-concepts:
passing_score: 70
questions:
- id: q1-p0-priority
question: "In the P0-P3 matrix, what priority level should login/authentication have?"
options:
A: "P3 - Low priority"
B: "P2 - Medium priority"
C: "P1 - High priority"
D: "P0 - Critical priority"
correct: D
explanation: "Login/authentication is P0 - critical. Business fails if broken. High usage, high impact, business-critical."
- id: q2-hard-waits
question: "What is the problem with using sleep(5000) instead of waitFor conditions?"
options:
A: "It makes tests slower"
B: "It's a hard wait that doesn't react to state changes (violates DoD)"
C: "It uses too much memory"
D: "It's not supported in modern frameworks"
correct: B
explanation: "Hard waits don't react to state changes - they guess timing. Use waitFor to react to conditions. This violates TEA Definition of Done."
- id: q3-self-cleaning
question: "What does 'self-cleaning tests' mean in TEA Definition of Done?"
options:
A: "Tests automatically fix their own bugs"
B: "Tests delete/deactivate entities they create during testing"
C: "Tests run faster by cleaning up code"
D: "Tests remove old test files"
correct: B
explanation: "Self-cleaning means tests delete/deactivate entities they created. No manual cleanup required."
session-03-architecture:
passing_score: 70
questions:
- id: q1-fixtures
question: "What is the main benefit of fixture composition?"
options:
A: "Faster test execution"
B: "DRY - define once, reuse everywhere"
C: "Better error messages"
D: "Automatic screenshot capture"
correct: B
explanation: "Fixture composition allows you to define setup once and reuse everywhere. DRY principle for test setup."
- id: q2-network-first
question: "Why is 'network-first' better than mocking after the action?"
options:
A: "It's faster"
B: "It prevents race conditions"
C: "It uses less memory"
D: "It's easier to write"
correct: B
explanation: "Setting up network interception BEFORE the action prevents race conditions. The mock is ready when the action triggers."
- id: q3-step-file
question: "What pattern does this teaching workflow use?"
options:
A: "Page Object Model"
B: "Behavior Driven Development"
C: "Step-File Architecture"
D: "Test Pyramid"
correct: C
explanation: "This workflow uses step-file architecture: micro-file design, just-in-time loading, sequential enforcement."
session-04-test-design:
passing_score: 70
questions:
- id: q1-test-design-purpose
question: "What does the Test Design workflow help you do?"
options:
A: "Write tests faster"
B: "Plan tests BEFORE writing them"
C: "Run tests in parallel"
D: "Debug test failures"
correct: B
explanation: "Test Design workflow helps you plan tests before writing them. Design before code, like architecture before implementation."
- id: q2-risk-calculation
question: "How do you calculate risk?"
options:
A: "Probability + Impact"
B: "Probability × Impact"
C: "Probability - Impact"
D: "Probability / Impact"
correct: B
explanation: "Risk = Probability × Impact. Multiply the likelihood of failure by the impact of failure."
- id: q3-p0-coverage
question: "For P0 features, which test levels should you use?"
options:
A: "Only E2E tests"
B: "Only unit tests"
C: "Unit + Integration + E2E (comprehensive)"
D: "Manual testing only"
correct: C
explanation: "P0 features need comprehensive coverage: Unit + Integration + E2E. High confidence for critical features."
session-05-atdd-automate:
passing_score: 70
questions:
- id: q1-red-phase
question: "What is the 'red' phase in TDD?"
options:
A: "Tests fail (code doesn't exist yet)"
B: "Tests pass"
C: "Code is refactored"
D: "Tests are deleted"
correct: A
explanation: "Red phase: Tests fail because the code doesn't exist yet. Write tests first, then implement."
- id: q2-atdd-vs-automate
question: "What's the difference between ATDD and Automate workflows?"
options:
A: "ATDD generates E2E, Automate generates API tests"
B: "ATDD writes tests first (red phase), Automate tests existing code"
C: "ATDD is faster than Automate"
D: "They're the same workflow"
correct: B
explanation: "ATDD writes failing tests first (red phase), then you implement. Automate generates tests for existing code (coverage expansion)."
- id: q3-api-testing
question: "Why use pure API tests without a browser?"
options:
A: "They look prettier"
B: "They're easier to debug"
C: "They're faster and test business logic directly"
D: "They're required by TEA"
correct: C
explanation: "Pure API tests are faster (no browser overhead) and test business logic directly without UI complexity."
session-06-quality-trace:
passing_score: 70
questions:
- id: q1-five-dimensions
question: "What are the 5 dimensions in Test Review workflow?"
options:
A: "Speed, cost, coverage, bugs, time"
B: "Determinism, Isolation, Assertions, Structure, Performance"
C: "Unit, integration, E2E, manual, exploratory"
D: "P0, P1, P2, P3, P4"
correct: B
explanation: "Test Review evaluates 5 dimensions: Determinism (no flakiness), Isolation (parallel-safe), Assertions (correct checks), Structure (readable/maintainable organization), Performance (speed)."
- id: q2-release-gate
question: "When should the Trace workflow gate decision be RED (block release)?"
options:
A: "Any test failures exist"
B: "P0 gaps exist (critical requirements not tested)"
C: "Code coverage is below 80%"
D: "Tests are slow"
correct: B
explanation: "RED gate when P0 gaps exist - critical requirements not tested. Don't ship if critical features lack test coverage."
- id: q3-metrics
question: "Which metric matters most for quality?"
options:
A: "Total line coverage %"
B: "Number of tests written"
C: "P0/P1 coverage %"
D: "Test file count"
correct: C
explanation: "P0/P1 coverage matters most - it measures coverage of critical/high-priority features. Total line coverage is a vanity metric."
session-07-advanced:
# No quiz - exploratory session
# Score: 100 (completion based, not quiz based)
passing_score: 100
questions: []
# Role-Based Content Customization
# Defines how teaching examples and focus areas adapt based on learner role
roles:
qa:
display_name: "QA Engineer"
focus_areas:
- Practical testing workflow usage
- Test framework setup and maintenance
- Test quality and coverage metrics
- CI/CD integration
example_contexts:
- "Expanding test coverage for existing features"
- "Setting up test framework for new project"
- "Reducing flaky tests in CI pipeline"
- "Improving test execution speed"
recommended_sessions:
- session-01-quickstart
- session-02-concepts
- session-03-architecture
- session-05-atdd-automate
- session-06-quality-trace
teaching_adaptations:
session-01-quickstart: "Focus on Automate workflow - quickly expand coverage"
session-02-concepts: "Emphasize P0-P3 for defending coverage decisions"
session-03-architecture: "Fixture patterns for maintainable test suites"
session-04-test-design: "Test design for planning coverage expansion"
session-05-atdd-automate: "ATDD and Automate for test generation"
session-06-quality-trace: "Test Review for quality metrics reporting"
session-07-advanced: "Playwright Utils for advanced testing patterns"
dev:
display_name: "Software Developer"
focus_areas:
- Integration testing perspective
- TDD approach
- Test-driven development workflow
- Unit and integration tests
example_contexts:
- "Writing tests alongside feature development"
- "Using ATDD to drive implementation"
- "Integrating tests into development workflow"
- "Testing APIs and business logic"
recommended_sessions:
- session-01-quickstart
- session-02-concepts
- session-05-atdd-automate
- session-03-architecture
- session-04-test-design
teaching_adaptations:
session-01-quickstart: "Focus on ATDD - tests drive implementation"
session-02-concepts: "Connect DoD to code quality standards"
session-03-architecture: "Fixtures as code patterns, like dependency injection"
session-04-test-design: "Risk assessment before writing code"
session-05-atdd-automate: "Red-green-refactor TDD cycle"
session-06-quality-trace: "Test quality like code quality - refactoring applies"
session-07-advanced: "API testing patterns, component TDD"
lead:
display_name: "Tech Lead / Engineering Manager"
focus_areas:
- Test architecture decisions
- Team testing patterns
- Framework and tooling choices
- Quality standards enforcement
example_contexts:
- "Establishing team testing standards"
- "Choosing test architecture patterns"
- "Code review for test quality"
- "Scaling test automation across team"
recommended_sessions:
- session-01-quickstart
- session-03-architecture
- session-04-test-design
- session-06-quality-trace
- session-07-advanced
teaching_adaptations:
session-01-quickstart: "TEA as team standard - scalable patterns"
session-02-concepts: "DoD as code review checklist - enforce quality"
session-03-architecture: "Architecture patterns for team consistency"
session-04-test-design: "Test design as planning phase in development"
session-05-atdd-automate: "ATDD for team TDD adoption"
session-06-quality-trace: "Test Review for quality metrics and team standards"
session-07-advanced: "Step-file architecture, fixture patterns, CI governance"
vp:
display_name: "VP Engineering / Director"
focus_areas:
- Testing strategy and ROI
- Quality metrics that matter
- Team scalability
- Risk management through testing
example_contexts:
- "Justifying test automation investment"
- "Scaling testing across multiple teams"
- "Quality metrics for stakeholder reporting"
- "Risk mitigation through test coverage"
recommended_sessions:
- session-01-quickstart
- session-02-concepts
- session-04-test-design
- session-06-quality-trace
teaching_adaptations:
session-01-quickstart: "TEA scales testing without scaling headcount"
session-02-concepts: "Risk-based testing aligns engineering with business impact"
session-03-architecture: "Architecture patterns reduce maintenance costs"
session-04-test-design: "Test design makes risk visible to stakeholders"
session-05-atdd-automate: "ATDD reduces defect rates early"
session-06-quality-trace: "Quality metrics: P0/P1 coverage, not vanity metrics"
session-07-advanced: "Governance patterns, CI orchestration, NFR assessment"
# Role-Based Example Types
example_types:
qa:
- "Test suite maintenance scenarios"
- "Coverage expansion projects"
- "Flaky test debugging"
- "CI pipeline configuration"
dev:
- "Feature development with TDD"
- "API integration testing"
- "Unit test patterns"
- "Mocking and stubbing"
lead:
- "Team architecture decisions"
- "Code review scenarios"
- "Standard enforcement"
- "Tooling selection"
vp:
- "ROI calculations"
- "Quality dashboards"
- "Risk reporting"
- "Team scaling strategies"
# Session Content Mapping
# Maps each session to specific TEA documentation, knowledge fragments, and online resources
base_paths:
tea_docs: "/docs"
tea_knowledge: "/src/agents/bmad-tea/resources/knowledge"
online_base: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise"
github_knowledge: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/main/src/agents/bmad-tea/resources/knowledge"
sessions:
session-01-quickstart:
docs:
- path: "/docs/tutorials/tea-lite-quickstart.md"
title: "TEA Lite Quickstart"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/tea-lite-quickstart/"
- path: "/docs/explanation/tea-overview.md"
title: "TEA Overview"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/tea-overview/"
- path: "/docs/how-to/workflows/run-automate.md"
title: "Run Automate Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/"
knowledge_fragments: []
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/"
workflows_referenced:
- automate
key_concepts:
- "What is TEA"
- "TEA Lite approach"
- "Engagement models"
- "9 workflows overview"
session-02-concepts:
docs:
- path: "/docs/explanation/testing-as-engineering.md"
title: "Testing as Engineering"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/testing-as-engineering/"
- path: "/docs/explanation/risk-based-testing.md"
title: "Risk-Based Testing"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/risk-based-testing/"
- path: "/docs/explanation/test-quality-standards.md"
title: "Test Quality Standards"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/test-quality-standards/"
knowledge_fragments:
- path: "/src/agents/bmad-tea/resources/knowledge/test-quality.md"
title: "Test Quality (DoD Execution Limits)"
- path: "/src/agents/bmad-tea/resources/knowledge/probability-impact.md"
title: "Probability × Impact Scoring"
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/testing-as-engineering/"
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/risk-based-testing/"
workflows_referenced: []
key_concepts:
- "Testing as engineering philosophy"
- "P0-P3 risk matrix"
- "Probability × Impact scoring"
- "Definition of Done (7 principles)"
session-03-architecture:
docs:
- path: "/docs/explanation/fixture-architecture.md"
title: "Fixture Architecture"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/fixture-architecture/"
- path: "/docs/explanation/network-first-patterns.md"
title: "Network-First Patterns"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/network-first-patterns/"
- path: "/docs/explanation/step-file-architecture.md"
title: "Step-File Architecture"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/step-file-architecture/"
knowledge_fragments:
- path: "/src/agents/bmad-tea/resources/knowledge/fixture-architecture.md"
title: "Fixture Architecture Patterns"
- path: "/src/agents/bmad-tea/resources/knowledge/network-first.md"
title: "Network-First Implementation"
- path: "/src/agents/bmad-tea/resources/knowledge/data-factories.md"
title: "Data Factories Pattern"
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/fixture-architecture/"
workflows_referenced:
- framework
key_concepts:
- "Fixture composition"
- "Network interception patterns"
- "Data factory pattern"
- "Step-file architecture"
session-04-test-design:
docs:
- path: "/docs/how-to/workflows/run-test-design.md"
title: "Run Test Design Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-design/"
knowledge_fragments:
- path: "/src/agents/bmad-tea/resources/knowledge/test-levels-framework.md"
title: "Test Levels Framework"
- path: "/src/agents/bmad-tea/resources/knowledge/test-priorities-matrix.md"
title: "Test Priorities Matrix"
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-design/"
workflows_referenced:
- test-design
key_concepts:
- "Test Design workflow steps"
- "Risk/testability assessment"
- "Coverage planning"
- "Test levels (unit/integration/E2E)"
session-05-atdd-automate:
docs:
- path: "/docs/how-to/workflows/run-atdd.md"
title: "Run ATDD Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-atdd/"
- path: "/docs/how-to/workflows/run-automate.md"
title: "Run Automate Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/"
knowledge_fragments:
- path: "/src/agents/bmad-tea/resources/knowledge/component-tdd.md"
title: "Component TDD Red-Green Loop"
- path: "/src/agents/bmad-tea/resources/knowledge/api-testing-patterns.md"
title: "API Testing Patterns"
- path: "/src/agents/bmad-tea/resources/knowledge/api-request.md"
title: "API Request Utility"
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-atdd/"
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/"
workflows_referenced:
- atdd
- automate
key_concepts:
- "ATDD workflow (red phase)"
- "TDD red-green-refactor"
- "Automate workflow (coverage expansion)"
- "API testing without browser"
session-06-quality-trace:
docs:
- path: "/docs/how-to/workflows/run-test-review.md"
title: "Run Test Review Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-review/"
- path: "/docs/how-to/workflows/run-trace.md"
title: "Run Trace Workflow"
url: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-trace/"
knowledge_fragments: []
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-test-review/"
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-trace/"
workflows_referenced:
- test-review
- trace
key_concepts:
- "5 dimensions of test quality"
- "Quality scoring (0-100)"
- "Requirements traceability"
- "Release gate decisions"
session-07-advanced:
docs: []
knowledge_fragments:
categories:
testing_patterns:
- fixture-architecture.md
- fixtures-composition.md
- network-first.md
- data-factories.md
- component-tdd.md
- api-testing-patterns.md
- test-healing-patterns.md
- selector-resilience.md
- timing-debugging.md
playwright_utils:
- overview.md
- api-request.md
- network-recorder.md
- intercept-network-call.md
- recurse.md
- log.md
- file-utils.md
- burn-in.md
- network-error-monitor.md
- contract-testing.md
- pactjs-utils-overview.md
- pactjs-utils-consumer-helpers.md
- pactjs-utils-provider-verifier.md
- pactjs-utils-request-filter.md
- pact-mcp.md
- pact-consumer-framework-setup.md
- pact-consumer-di.md
- visual-debugging.md
browser_automation:
- playwright-cli.md
configuration_governance:
- playwright-config.md
- ci-burn-in.md
- selective-testing.md
- feature-flags.md
- risk-governance.md
- adr-quality-readiness-checklist.md
quality_frameworks:
- test-quality.md
- test-levels-framework.md
- test-priorities-matrix.md
- probability-impact.md
- nfr-criteria.md
auth_security:
- email-auth.md
- auth-session.md
- error-handling.md
online_references:
- "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/knowledge-base/"
- "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/main/src/agents/bmad-tea/resources/knowledge"
workflows_referenced: []
key_concepts:
- "Menu-driven fragment exploration"
- "Just-in-time deep-dive learning"
- "42 knowledge fragments organized by category"
# TEA Resources Index
# Comprehensive index of TEA documentation, knowledge fragments, and online resources
base_urls:
online_docs: "https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise"
github_repo: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise"
github_knowledge: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/main/src/agents/bmad-tea/resources/knowledge"
# Public Documentation (32 files)
documentation:
tutorials:
- name: "Getting Started with Test Architect"
local: "/docs/tutorials/tea-lite-quickstart.md"
online: "/tutorials/tea-lite-quickstart/"
description: "30-minute quick start guide to TEA Lite"
how_to_guides:
workflows:
- name: "Set Up Test Framework"
local: "/docs/how-to/workflows/setup-test-framework.md"
online: "/how-to/workflows/setup-test-framework/"
workflow: framework
- name: "Set Up CI Pipeline"
local: "/docs/how-to/workflows/setup-ci.md"
online: "/how-to/workflows/setup-ci/"
workflow: ci
- name: "Test Design"
local: "/docs/how-to/workflows/run-test-design.md"
online: "/how-to/workflows/run-test-design/"
workflow: test-design
- name: "ATDD"
local: "/docs/how-to/workflows/run-atdd.md"
online: "/how-to/workflows/run-atdd/"
workflow: atdd
- name: "Automate"
local: "/docs/how-to/workflows/run-automate.md"
online: "/how-to/workflows/run-automate/"
workflow: automate
- name: "Test Review"
local: "/docs/how-to/workflows/run-test-review.md"
online: "/how-to/workflows/run-test-review/"
workflow: test-review
- name: "Trace"
local: "/docs/how-to/workflows/run-trace.md"
online: "/how-to/workflows/run-trace/"
workflow: trace
- name: "NFR Assessment"
local: "/docs/how-to/workflows/run-nfr-assess.md"
online: "/how-to/workflows/run-nfr-assess/"
workflow: nfr-assess
customization:
- name: "Configure Browser Automation"
local: "/docs/how-to/customization/configure-browser-automation.md"
online: "/how-to/customization/configure-browser-automation/"
- name: "Integrate Playwright Utils with TEA"
local: "/docs/how-to/customization/integrate-playwright-utils.md"
online: "/how-to/customization/integrate-playwright-utils/"
brownfield:
- name: "Running TEA for Enterprise Projects"
local: "/docs/how-to/brownfield/use-tea-for-enterprise.md"
online: "/how-to/brownfield/use-tea-for-enterprise/"
- name: "Using TEA with Existing Tests"
local: "/docs/how-to/brownfield/use-tea-with-existing-tests.md"
online: "/how-to/brownfield/use-tea-with-existing-tests/"
explanation:
- name: "TEA Overview"
local: "/docs/explanation/tea-overview.md"
online: "/explanation/tea-overview/"
topics: ["Architecture", "Engagement models"]
- name: "Testing as Engineering"
local: "/docs/explanation/testing-as-engineering.md"
online: "/explanation/testing-as-engineering/"
topics: ["Philosophy", "Design principles"]
- name: "Engagement Models"
local: "/docs/explanation/engagement-models.md"
online: "/explanation/engagement-models/"
topics: ["Lite", "Solo", "Integrated", "Enterprise", "Brownfield"]
- name: "Risk-Based Testing"
local: "/docs/explanation/risk-based-testing.md"
online: "/explanation/risk-based-testing/"
topics: ["P0-P3 matrix", "Probability × Impact"]
- name: "Test Quality Standards"
local: "/docs/explanation/test-quality-standards.md"
online: "/explanation/test-quality-standards/"
topics: ["Definition of Done", "7 principles"]
- name: "Knowledge Base System"
local: "/docs/explanation/knowledge-base-system.md"
online: "/explanation/knowledge-base-system/"
topics: ["Fragment management", "42 fragments"]
- name: "Network-First Patterns"
local: "/docs/explanation/network-first-patterns.md"
online: "/explanation/network-first-patterns/"
topics: ["Network interception", "Race condition prevention"]
- name: "Fixture Architecture"
local: "/docs/explanation/fixture-architecture.md"
online: "/explanation/fixture-architecture/"
topics: ["Composition", "mergeTests pattern"]
- name: "Step-File Architecture"
local: "/docs/explanation/step-file-architecture.md"
online: "/explanation/step-file-architecture/"
topics: ["Micro-file design", "JIT loading", "Sequential enforcement"]
- name: "Subagent Architecture"
local: "/docs/explanation/subagent-architecture.md"
online: "/explanation/subagent-architecture/"
topics: ["Parallel execution", "Context optimization"]
reference:
- name: "Commands"
local: "/docs/reference/commands.md"
online: "/reference/commands/"
- name: "Configuration"
local: "/docs/reference/configuration.md"
online: "/reference/configuration/"
- name: "Knowledge Base"
local: "/docs/reference/knowledge-base.md"
online: "/reference/knowledge-base/"
github_link: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/main/src/agents/bmad-tea/resources/knowledge"
- name: "Troubleshooting"
local: "/docs/reference/troubleshooting.md"
online: "/reference/troubleshooting/"
# Knowledge Fragments (41 files)
knowledge_fragments:
testing_patterns:
- name: "fixture-architecture"
path: "/src/agents/bmad-tea/resources/knowledge/fixture-architecture.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/fixture-architecture.md"
description: "Composable fixture patterns and mergeTests"
- name: "fixtures-composition"
path: "/src/agents/bmad-tea/resources/knowledge/fixtures-composition.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/fixtures-composition.md"
description: "mergeTests composition patterns for combining utilities"
- name: "network-first"
path: "/src/agents/bmad-tea/resources/knowledge/network-first.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/network-first.md"
description: "Network interception safeguards"
- name: "data-factories"
path: "/src/agents/bmad-tea/resources/knowledge/data-factories.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/data-factories.md"
description: "Data seeding and setup patterns"
- name: "component-tdd"
path: "/src/agents/bmad-tea/resources/knowledge/component-tdd.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/component-tdd.md"
description: "TDD red-green-refactor loop"
- name: "api-testing-patterns"
path: "/src/agents/bmad-tea/resources/knowledge/api-testing-patterns.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/api-testing-patterns.md"
description: "Pure API testing without browser"
- name: "test-healing-patterns"
path: "/src/agents/bmad-tea/resources/knowledge/test-healing-patterns.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/test-healing-patterns.md"
description: "Auto-fix common test failures"
- name: "selector-resilience"
path: "/src/agents/bmad-tea/resources/knowledge/selector-resilience.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/selector-resilience.md"
description: "Robust selectors that don't break"
- name: "timing-debugging"
path: "/src/agents/bmad-tea/resources/knowledge/timing-debugging.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/timing-debugging.md"
description: "Race condition fixes"
playwright_utils:
- name: "overview"
path: "/src/agents/bmad-tea/resources/knowledge/overview.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/overview.md"
description: "Playwright Utils overview and installation"
- name: "api-request"
path: "/src/agents/bmad-tea/resources/knowledge/api-request.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/api-request.md"
description: "Typed HTTP client with schema validation"
- name: "network-recorder"
path: "/src/agents/bmad-tea/resources/knowledge/network-recorder.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/network-recorder.md"
description: "HAR record and playback"
- name: "intercept-network-call"
path: "/src/agents/bmad-tea/resources/knowledge/intercept-network-call.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/intercept-network-call.md"
description: "Network spy and stub utilities"
- name: "recurse"
path: "/src/agents/bmad-tea/resources/knowledge/recurse.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/recurse.md"
description: "Async polling for eventual consistency"
- name: "log"
path: "/src/agents/bmad-tea/resources/knowledge/log.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/log.md"
description: "Test report logging utilities"
- name: "file-utils"
path: "/src/agents/bmad-tea/resources/knowledge/file-utils.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/file-utils.md"
description: "CSV/XLSX/PDF/ZIP validation"
- name: "burn-in"
path: "/src/agents/bmad-tea/resources/knowledge/burn-in.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/burn-in.md"
description: "Smart test selection via git diff"
- name: "network-error-monitor"
path: "/src/agents/bmad-tea/resources/knowledge/network-error-monitor.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/network-error-monitor.md"
description: "HTTP 4xx/5xx detection"
- name: "contract-testing"
path: "/src/agents/bmad-tea/resources/knowledge/contract-testing.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/contract-testing.md"
description: "Pact publishing and provider verification"
- name: "pactjs-utils-overview"
path: "/src/agents/bmad-tea/resources/knowledge/pactjs-utils-overview.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pactjs-utils-overview.md"
description: "Pact.js Utils installation and contract testing flows"
- name: "pactjs-utils-consumer-helpers"
path: "/src/agents/bmad-tea/resources/knowledge/pactjs-utils-consumer-helpers.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pactjs-utils-consumer-helpers.md"
description: "Consumer-side Pact helpers (createProviderState, toJsonMap)"
- name: "pactjs-utils-provider-verifier"
path: "/src/agents/bmad-tea/resources/knowledge/pactjs-utils-provider-verifier.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pactjs-utils-provider-verifier.md"
description: "Provider verification options builders"
- name: "pactjs-utils-request-filter"
path: "/src/agents/bmad-tea/resources/knowledge/pactjs-utils-request-filter.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pactjs-utils-request-filter.md"
description: "Request filter for auth injection in provider verification"
- name: "pact-mcp"
path: "/src/agents/bmad-tea/resources/knowledge/pact-mcp.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pact-mcp.md"
description: "SmartBear MCP server for PactFlow tooling setup"
- name: "pact-consumer-framework-setup"
path: "/src/agents/bmad-tea/resources/knowledge/pact-consumer-framework-setup.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pact-consumer-framework-setup.md"
description: "Consumer CDC framework directory structure and CI workflow"
- name: "pact-consumer-di"
path: "/src/agents/bmad-tea/resources/knowledge/pact-consumer-di.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/pact-consumer-di.md"
description: "Dependency injection pattern for Pact consumer tests"
- name: "visual-debugging"
path: "/src/agents/bmad-tea/resources/knowledge/visual-debugging.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/visual-debugging.md"
description: "Trace viewer workflows and debugging artifacts"
configuration_governance:
- name: "playwright-config"
path: "/src/agents/bmad-tea/resources/knowledge/playwright-config.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/playwright-config.md"
description: "Environment and timeout guardrails"
- name: "ci-burn-in"
path: "/src/agents/bmad-tea/resources/knowledge/ci-burn-in.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/ci-burn-in.md"
description: "CI orchestration and smart selection"
- name: "selective-testing"
path: "/src/agents/bmad-tea/resources/knowledge/selective-testing.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/selective-testing.md"
description: "Tag and grep filters"
- name: "feature-flags"
path: "/src/agents/bmad-tea/resources/knowledge/feature-flags.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/feature-flags.md"
description: "Feature flag governance and cleanup"
- name: "risk-governance"
path: "/src/agents/bmad-tea/resources/knowledge/risk-governance.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/risk-governance.md"
description: "Risk scoring matrix and gate rules"
- name: "adr-quality-readiness-checklist"
path: "/src/agents/bmad-tea/resources/knowledge/adr-quality-readiness-checklist.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/adr-quality-readiness-checklist.md"
description: "Quality readiness checklist for decisions and reviews"
quality_frameworks:
- name: "test-quality"
path: "/src/agents/bmad-tea/resources/knowledge/test-quality.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/test-quality.md"
description: "Definition of Done execution limits"
- name: "test-levels-framework"
path: "/src/agents/bmad-tea/resources/knowledge/test-levels-framework.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/test-levels-framework.md"
description: "Unit/Integration/E2E selection criteria"
- name: "test-priorities-matrix"
path: "/src/agents/bmad-tea/resources/knowledge/test-priorities-matrix.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/test-priorities-matrix.md"
description: "P0-P3 coverage targets"
- name: "probability-impact"
path: "/src/agents/bmad-tea/resources/knowledge/probability-impact.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/probability-impact.md"
description: "Probability × impact scoring definitions"
- name: "nfr-criteria"
path: "/src/agents/bmad-tea/resources/knowledge/nfr-criteria.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/nfr-criteria.md"
description: "Non-functional requirements assessment"
auth_security:
- name: "email-auth"
path: "/src/agents/bmad-tea/resources/knowledge/email-auth.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/email-auth.md"
description: "Magic link extraction and auth state"
- name: "auth-session"
path: "/src/agents/bmad-tea/resources/knowledge/auth-session.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/auth-session.md"
description: "Token persistence and multi-user auth"
- name: "error-handling"
path: "/src/agents/bmad-tea/resources/knowledge/error-handling.md"
github: "https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/blob/main/src/agents/bmad-tea/resources/knowledge/error-handling.md"
description: "Exception handling and retry validation"
# Quick Reference Maps
session_to_resources:
session-01:
primary_docs: ["tea-lite-quickstart", "tea-overview", "run-automate"]
fragments: []
session-02:
primary_docs: ["testing-as-engineering", "risk-based-testing", "test-quality-standards"]
fragments: ["test-quality", "probability-impact"]
session-03:
primary_docs: ["fixture-architecture", "network-first-patterns", "step-file-architecture"]
fragments: ["fixture-architecture", "network-first", "data-factories"]
session-04:
primary_docs: ["run-test-design"]
fragments: ["test-levels-framework", "test-priorities-matrix"]
session-05:
primary_docs: ["run-atdd", "run-automate"]
fragments: ["component-tdd", "api-testing-patterns", "api-request"]
session-06:
primary_docs: ["run-test-review", "run-trace"]
fragments: []
session-07:
primary_docs: []
fragments: [] # All 42 fragments available via menu-driven exploration
# Web-Browsing Fallback Strategy
fallback_urls:
playwright_docs: "https://playwright.dev/docs/intro"
jest_docs: "https://jestjs.io/docs/getting-started"
cypress_docs: "https://docs.cypress.io/guides/overview/why-cypress"
vitest_docs: "https://vitest.dev/guide/"
testing_library: "https://testing-library.com/docs/"
Teach Me Testing - Usage Instructions
Overview
The Teach Me Testing workflow is a multi-session learning companion that teaches testing progressively through 7 structured sessions with state persistence. Designed for self-paced learning over 1-2 weeks.
Who Should Use This
- New QA Engineers: Complete onboarding in testing fundamentals
- Developers: Learn testing from an integration perspective
- Team Leads: Understand architecture patterns and team practices
- VPs/Managers: Grasp testing strategy and quality metrics
How to Run
Starting Fresh
# From TEA module location
cd /path/to/bmad-method-test-architecture-enterprise
# Run the workflow
bmad run teach-me-testingOr invoke through TEA agent menu:
bmad agent tea
# Select [TMT] Teach Me TestingContinuing Existing Progress
The workflow automatically detects existing progress and resumes where you left off. Your progress is saved at:
{test_artifacts}/teaching-progress/{your-name}-tea-progress.yaml
Workflow Structure
Step Entrypoints
- Create / start:
{skill-root}/steps-c/step-01-init.md - Continue existing progress:
{skill-root}/steps-c/step-01b-continue.md - Validate the workflow:
{skill-root}/steps-v/step-v-01-validate.md - Edit the workflow:
{skill-root}/steps-e/step-e-01-assess-workflow.md
7 Sessions
1. Quick Start (30 min) - TEA Lite intro, run automate workflow 2. Core Concepts (45 min) - Risk-based testing, DoD, philosophy 3. Architecture (60 min) - Fixtures, network patterns, framework 4. Test Design (60 min) - Risk assessment workflow 5. ATDD & Automate (60 min) - ATDD + Automate workflows 6. Quality & Trace (45 min) - Test review + Trace workflows 7. Advanced Patterns (ongoing) - Menu-driven knowledge fragment exploration
Non-Linear Learning
- Jump to any session based on your experience level
- Beginners: Start at Session 1
- Intermediate: Skip to Session 3-6
- Experienced: Jump to Session 7 (Advanced)
Session Flow
Each session follows this pattern:
1. Load relevant TEA docs just-in-time 2. Present teaching content (mostly autonomous) 3. Knowledge validation quiz (interactive) 4. Generate session notes artifact 5. Update progress file 6. Return to session menu (continue or exit)
Progress Tracking
Your progress is automatically saved after each session:
- Progress file:
{test_artifacts}/teaching-progress/{your-name}-tea-progress.yaml - Session notes:
{test_artifacts}/tea-academy/{your-name}/session-{N}-notes.md - Certificate:
{test_artifacts}/tea-academy/{your-name}/tea-completion-certificate.md
Quiz Scoring
- Passing threshold: ≥70%
- On failure: Option to review content or continue anyway
- Attempts: 3 attempts per question before showing correct answer
Completion
Complete all 7 sessions to receive your TEA Academy completion certificate with:
- Session completion dates and scores
- Skills acquired checklist
- Learning artifacts paths
- Recommended next steps
Tips for Success
1. Set aside dedicated time - Each session requires focus (30-90 min) 2. Take notes - Session notes are generated, but add your own insights 3. Apply immediately - Practice concepts on your current project 4. Explore fragments - Session 7 has 42 knowledge fragments to deep-dive 5. Share with team - Help others learn by sharing your experience
Customization by Role
The workflow adapts examples based on your role:
- QA: Practical testing focus, workflow usage
- Dev: Integration perspective, TDD approach
- Lead: Architecture decisions, team patterns
- VP: Strategy, ROI, quality metrics
Troubleshooting
Progress file corrupted
- Workflow detects corruption and offers fresh start
- Backup file created automatically
Missing TEA docs
- Workflow uses Web-Browsing fallback for external frameworks
- Primary source is always local docs
Session interrupted
- Progress auto-saved after quiz completion
- Resume from session menu on next run
Support
- Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/>
- Knowledge Fragments: <https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/tree/main/src/agents/bmad-tea/resources/knowledge>
- Issues: Report via TEA module repository
Step 1: Initialize TEA Academy
STEP GOAL:
To welcome the learner, check for existing progress from previous sessions, and route to either continuation (if progress exists) or new assessment (if starting fresh).
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on initialization and routing
- 🚫 FORBIDDEN to start teaching yet - that comes in session steps
- 💬 Approach: Check for progress, route appropriately
- 🚪 This is the entry point - sets up everything that follows
EXECUTION PROTOCOLS:
- 🎯 Check for existing progress file
- 💾 Create initial progress if new learner
- 📖 Route to continuation or assessment based on progress
- 🚫 FORBIDDEN to skip continuation check - critical for multi-session learning
CONTEXT BOUNDARIES:
- Available context: User name, test artifacts path, templates
- Focus: Detect continuation vs new start
- Limits: No teaching yet, no assessment yet
- Dependencies: None - this is the first step
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Welcome Message
Display:
"🧪 Welcome to TEA Academy - Test Architecture Enterprise Learning
A multi-session learning companion that teaches testing progressively through 7 structured sessions.
Let me check if you've started this journey before..."
2. Check for Existing Progress
Check if {progressFile} exists.
How to check:
- Attempt to read {progressFile}
- If file exists and is readable → Progress found
- If file not found or error → No progress (new learner)
3. Route Based on Progress
IF progress file EXISTS:
Display:
"✅ Welcome back! I found your existing progress.
Let me load where you left off..."
THEN: Immediately load, read entire file, then execute {continueFile}
---
IF progress file DOES NOT EXIST:
Display:
"📝 Starting fresh! I'll create your progress tracking file.
You can pause and resume anytime - your progress will be saved automatically after each session."
THEN: Proceed to step 4
4. Create Initial Progress File (New Learner Only)
Load {progressTemplate} and create {progressFile} with:
---
# TEA Academy Progress Tracking
user: { user_name }
role: null # Will be set in assessment
experience_level: null # Will be set in assessment
learning_goals: null # Will be set in assessment
pain_points: null # Optional, set in assessment
started_date: { current_date }
last_session_date: { current_date }
sessions:
- id: session-01-quickstart
name: 'Quick Start'
duration: '30 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-02-concepts
name: 'Core Concepts'
duration: '45 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-03-architecture
name: 'Architecture & Patterns'
duration: '60 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-04-test-design
name: 'Test Design'
duration: '60 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-05-atdd-automate
name: 'ATDD & Automate'
duration: '60 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-06-quality-trace
name: 'Quality & Trace'
duration: '45 min'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
- id: session-07-advanced
name: 'Advanced Patterns'
duration: 'ongoing'
status: not-started
started_date: null
completed_date: null
score: null
notes_artifact: null
sessions_completed: 0
total_sessions: 7
completion_percentage: 0
next_recommended: session-01-quickstart
stepsCompleted: ['step-01-init']
lastStep: 'step-01-init'
lastContinued: { current_date }
certificate_generated: false
certificate_path: null
completion_date: null
---5. Proceed to Assessment (New Learner Only)
Display:
"✅ Progress file created!
Now let's learn about you - your role, experience level, and learning goals.
This helps me customize examples and recommendations for you.
Proceeding to assessment..."
THEN: Immediately load, read entire file, then execute {nextStepFile}
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Progress file check performed correctly
- Existing learners routed to continuation (step-01b)
- New learners get progress file created
- Progress file has complete schema with all 7 sessions
- New learners routed to assessment (step-02)
- stepsCompleted array initialized
❌ SYSTEM FAILURE:
- Skipping progress file check
- Not routing to continuation for existing learners
- Creating duplicate progress files
- Progress file missing required fields
- Not updating stepsCompleted array
- Asking user questions before checking progress
Master Rule: This is an auto-proceed initialization step. Check progress, route appropriately, no user menu needed.
Step 1b: Continue TEA Academy
STEP GOAL:
To resume the TEA Academy workflow from a previous session by loading progress, displaying a dashboard, and routing to the session menu.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate _new instructional content_ without user input (auto-proceed steps may display status/route)
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on loading progress and routing to session menu
- 🚫 FORBIDDEN to start teaching - that happens in session steps
- 💬 Approach: Load progress, show dashboard, route to menu
- 🚪 This is the continuation entry point - seamless resume
EXECUTION PROTOCOLS:
- 🎯 Load progress file completely
- 💾 Update lastContinued timestamp
- 📖 Display progress dashboard with completion status
- 🚫 FORBIDDEN to skip dashboard - learners need to see progress
- ⏭️ Auto-route to session menu after dashboard
CONTEXT BOUNDARIES:
- Available context: Progress file with all session data
- Focus: Display progress, route to menu
- Limits: No teaching, no session execution
- Dependencies: Progress file must exist (checked in step-01-init)
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Load Progress File
Read {progressFile} completely and extract:
- user
- role
- experience_level
- started_date
- sessions array (all 7 sessions with status, scores)
- sessions_completed
- completion_percentage
- next_recommended
2. Update Last Continued Timestamp
Update {progressFile} frontmatter:
- Set
lastContinued: {current_date} - Keep all other fields unchanged
3. Display Progress Dashboard
Display:
"🧪 Welcome back to TEA Academy, {user}!
Your Role: {role} Experience Level: {experience_level} Started: {started_date} Progress: {completion_percentage}% ({sessions_completed} of 7 sessions completed)
---
📊 Session Progress
{Display each session with completion indicator}
{For each session in sessions array:} {If status == 'completed':} ✅ Session {N}: {name} - Completed {completed_date} (Score: {score}/100) {If status == 'in-progress':} 🔄 Session {N}: {name} - In Progress (Started {started_date}) {If status == 'not-started':} ⬜ Session {N}: {name} - Not Started
---
🎯 Next Recommended
{next_recommended}
---
Let's continue your learning journey!
Loading session menu..."
4. Route to Session Menu
Display:
"Proceeding to session menu..."
THEN: Immediately load, read entire file, then execute {nextStepFile}
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Progress file loaded correctly
- lastContinued timestamp updated
- Dashboard displayed with accurate completion status
- Session indicators correct (✅ completed, 🔄 in-progress, ⬜ not-started)
- Completion percentage calculated correctly
- Next recommended session identified
- Auto-routed to session menu (step-03)
❌ SYSTEM FAILURE:
- Not loading progress file
- Dashboard missing or incomplete
- Incorrect completion indicators
- Not updating lastContinued timestamp
- Asking user for input instead of auto-routing
- Not routing to session menu
Master Rule: This is an auto-proceed continuation step. Load progress, show dashboard, route to session menu - no user menu needed.
Step 2: Learner Assessment
STEP GOAL:
To gather the learner's role, experience level, learning goals, and pain points to customize teaching examples and recommendations throughout the curriculum.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate _new instructional content_ without user input (auto-proceed steps may display status/route)
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step (auto-proceed), ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on gathering assessment data
- 🚫 FORBIDDEN to start teaching yet - that comes in session steps
- 💬 Approach: Ask clear questions, validate responses, explain why we're asking
- 🚪 This assessment customizes the entire learning experience
EXECUTION PROTOCOLS:
- 🎯 Ask questions one at a time
- 💾 Validate each response before moving forward
- 📖 Update progress file with complete assessment data
- 🚫 FORBIDDEN to skip validation - ensures data quality
CONTEXT BOUNDARIES:
- Available context: Progress file created in step-01
- Focus: Gather role, experience, goals, pain points
- Limits: No teaching yet, no session execution
- Dependencies: Progress file exists (created in step-01-init)
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Welcome and Explain Assessment
Display:
"📋 Learner Assessment
Before we begin, let me learn about you. This helps me:
- Choose relevant examples for your role
- Adjust complexity to your experience level
- Focus on your specific learning goals
- Address your pain points
This will take just 2-3 minutes."
2. Gather Role
Ask:
"What is your role?
Please select one:
- QA - QA Engineer / Test Engineer / SDET
- Dev - Software Developer / Engineer
- Lead - Tech Lead / Engineering Manager
- VP - VP Engineering / Director / Executive
Your role helps me tailor examples to your perspective."
Wait for response.
Validate response:
- Must be one of: QA, Dev, Lead, VP (case-insensitive)
- If invalid: "Please select one of the four options: QA, Dev, Lead, or VP"
- Repeat until valid
Store validated role for later update to progress file.
3. Gather Experience Level
Ask:
"What is your experience level with testing?
Please select one:
- Beginner - New to testing, learning fundamentals
- Intermediate - Have written tests, want to improve
- Experienced - Strong testing background, want advanced techniques
Your experience level helps me adjust complexity and skip topics you already know."
Wait for response.
Validate response:
- Must be one of: Beginner, Intermediate, Experienced (case-insensitive)
- If invalid: "Please select one of the three levels: Beginner, Intermediate, or Experienced"
- Repeat until valid
Store validated experience_level for later update to progress file.
4. Gather Learning Goals
Ask:
"What are your learning goals?
Tell me what you want to achieve with TEA Academy. For example:
- Learn testing fundamentals from scratch
- Understand TEA methodology and workflows
- Improve test quality and reduce flakiness
- Master advanced patterns (fixtures, network-first, etc.)
- Prepare for QA onboarding at my company
Your answer helps me recommend which sessions to focus on."
Wait for response.
Validate response:
- Must not be empty
- Should be at least 10 characters
- If too short: "Please provide more detail about your learning goals (at least a sentence)"
- Repeat until valid
Store learning_goals for later update to progress file.
5. Gather Pain Points (Optional)
Ask:
"What are your current pain points with testing? _(Optional)_
For example:
- Flaky tests that fail randomly
- Slow test suites
- Hard to maintain tests
- Don't know where to start
- Team doesn't value testing
This helps me provide targeted examples. You can skip this by typing 'skip' or 'none'."
Wait for response.
Handle response:
- If response is "skip", "none", or similar → Set pain_points to null
- If response is provided → Store pain_points for later update
- No validation needed (optional field)
6. Summarize Assessment
Display:
"✅ Assessment Complete!
Here's what I learned about you:
Role: {role} Experience Level: {experience_level} Learning Goals: {learning_goals} Pain Points: {pain_points or 'None specified'}
I'll use this to customize examples and recommendations throughout your learning journey."
7. Update Progress File
Load {progressFile} and update the following fields:
role: {role}experience_level: {experience_level}learning_goals: {learning_goals}pain_points: {pain_points}(or null if not provided)
Update stepsCompleted array:
- Append 'step-02-assess' to stepsCompleted array
- Update lastStep: 'step-02-assess'
Save the updated progress file.
8. Provide Next Steps Preview
Display:
"Next: You'll see the session menu where you can choose from 7 learning sessions.
Based on your experience level:
{If beginner:}
- I recommend starting with Session 1 (Quick Start)
- It introduces TEA with a hands-on example
{If intermediate:}
- You might want to skip to Session 3 (Architecture)
- Or review Session 2 (Core Concepts) first if you want fundamentals
{If experienced:}
- Feel free to jump to Session 7 (Advanced Patterns)
- Or pick specific sessions based on your goals
You can take sessions in any order and pause anytime!"
9. Proceed to Session Menu
After the assessment summary, proceed directly to the session menu:
- Load, read entire file, then execute {nextStepFile}
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- All required fields gathered (role, experience_level, learning_goals)
- Optional pain_points handled correctly
- All responses validated before proceeding
- Progress file updated with assessment data
- stepsCompleted array updated with 'step-02-assess'
- Experience-based recommendations provided
- User routed to session menu (step-03)
❌ SYSTEM FAILURE:
- Skipping validation of required fields
- Not updating progress file
- Not adding to stepsCompleted array
- Proceeding without waiting for user responses
- Not providing experience-based recommendations
- Hardcoding responses instead of asking user
Master Rule: Assessment must be complete and validated before proceeding to session menu.
Step 3: Session Menu (Hub)
STEP GOAL:
To present all 7 learning sessions with completion status, allow non-linear session selection, and route to chosen session or completion. This is the central hub - all sessions return here.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on displaying sessions and routing
- 🚫 FORBIDDEN to start teaching - that happens in session steps
- 💬 Approach: Show progress, let learner choose their path
- 🚪 This is the HUB - all sessions loop back here
EXECUTION PROTOCOLS:
- 🎯 Load progress file to get session completion status
- 💾 Display sessions with accurate indicators
- 📖 Route to selected session or completion
- 🚫 FORBIDDEN to skip progress check - status indicators critical
- ⏭️ No stepsCompleted update (this is a routing hub, not a content step)
CONTEXT BOUNDARIES:
- Available context: Progress file with all session data
- Focus: Display menu, route to selection
- Limits: No teaching, no session execution
- Dependencies: Progress file exists (created in step-01, updated in step-02)
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Load Progress File
Read {progressFile} and extract:
- user
- role
- experience_level
- sessions array (all 7 sessions with status, scores, dates)
- sessions_completed
- completion_percentage
- next_recommended
2. Display Session Menu with Status
Display:
"🧪 TEA Academy - Session Menu
Progress: {completion_percentage}% ({sessions_completed} of 7 sessions completed)
---
📚 Available Sessions
{For each session in sessions array, display with status indicator:}
Session 1: Quick Start (30 min) {status_indicator} TEA Lite intro, run automate workflow {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 2: Core Concepts (45 min) {status_indicator} Risk-based testing, DoD, testing philosophy {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 3: Architecture & Patterns (60 min) {status_indicator} Fixtures, network patterns, framework setup {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 4: Test Design (60 min) {status_indicator} Risk assessment, test design workflow {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 5: ATDD & Automate (60 min) {status_indicator} ATDD + Automate workflows, TDD approach {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 6: Quality & Trace (45 min) {status_indicator} Test review + Trace workflows, quality metrics {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
Session 7: Advanced Patterns (ongoing) {status_indicator} Menu-driven knowledge fragment exploration (42 fragments) {if completed: Score: {score}/100 | Completed: {completed_date}} {if in-progress: Started: {started_date}}
---
Status Indicators:
- ✅ = Completed
- 🔄 = In Progress
- ⬜ = Not Started
---
{If next_recommended exists:} 💡 Recommended Next: {next_recommended} "
3. Check for Completion
Before displaying menu options, check:
If all 7 sessions have status 'completed' AND certificate_generated != true:
- Display: "🎉 Congratulations! You've completed all 7 sessions!"
- Skip session menu options
- Proceed directly to step 4b (route to completion)
Otherwise: Display session menu options in step 4a
4a. Present Session Menu Options (Sessions Remaining)
Display:
"Select a session or exit:
[1-7] Start or continue a session [X] Save progress and exit
What would you like to do?"
EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- Route based on user selection
- User can ask questions - always respond and redisplay menu
Menu Handling Logic:
- IF 1: Load, read entire file, then execute {session01File}
- IF 2: Load, read entire file, then execute {session02File}
- IF 3: Load, read entire file, then execute {session03File}
- IF 4: Load, read entire file, then execute {session04File}
- IF 5: Load, read entire file, then execute {session05File}
- IF 6: Load, read entire file, then execute {session06File}
- IF 7: Load, read entire file, then execute {session07File}
- IF X: Display "Progress saved. See you next time! 👋" and END workflow
- IF Any other: "Please select a session number (1-7) or X to exit", then Redisplay Menu Options
4b. Route to Completion (All Sessions Done)
If all 7 sessions completed:
Display:
"Proceeding to generate your completion certificate..."
Load, read entire file, then execute {completionFile}
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Progress file loaded correctly
- All 7 sessions displayed with accurate status indicators
- Completion percentage calculated correctly
- Session status matches progress file (✅ completed, 🔄 in-progress, ⬜ not-started)
- User selection validated (1-7 or X)
- Correct routing to selected session file
- Completion detected when all 7 done
- Exit option saves and ends workflow cleanly
- No stepsCompleted update (this is routing hub, not content step)
❌ SYSTEM FAILURE:
- Not loading progress file
- Wrong status indicators
- Incorrect completion percentage
- Not detecting when all sessions complete
- Routing to wrong session file
- Updating stepsCompleted (hub should not update this)
- Not displaying session descriptions
- Not allowing non-linear session selection
Master Rule: This is the central hub. Display accurate status, let learner choose freely, route correctly. All sessions return here.
Step 4: Session 1 - Quick Start
STEP GOAL:
To provide immediate value through a 30-minute introduction to TEA Lite, run the automate workflow as a hands-on example, validate understanding through a quiz, and generate session notes.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate _unsolicited_ content without user input (session flow content is allowed once session begins)
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on Session 1 content (Quick Start)
- 🚫 FORBIDDEN to skip ahead to other sessions
- 💬 Approach: Teach concepts, provide examples, quiz understanding
- 🚪 Teaching is mostly autonomous, quiz is collaborative
- 📚 Reference TEA docs and provide URLs for further reading
EXECUTION PROTOCOLS:
- 🎯 Load TEA docs just-in-time (not all at once)
- 💾 Generate session notes after completion
- 📖 Update progress file with session completion and score
- 🚫 FORBIDDEN to skip quiz - validates understanding
- ⏭️ Always return to session menu hub after completion
CONTEXT BOUNDARIES:
- Available context: Progress file with user role/experience
- Focus: Session 1 - TEA Lite introduction
- Limits: Only Session 1 content, don't preview other sessions
- Dependencies: Progress file exists with assessment data
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Session Welcome
Display:
"🧪 Session 1: Quick Start (30 minutes)
Objective: Get immediate value by seeing TEA in action
What you'll learn:
- What is TEA and why it exists
- TEA Lite quick start approach
- How to run your first TEA workflow (Automate)
- TEA engagement models
Let's get started!"
2. Update Progress File (Session Started)
Load {progressFile} and update session-01-quickstart:
- Set
status: 'in-progress' - Set
started_date: {current_date}
Save the updated progress file.
3. Teaching: What is TEA?
Present this content (mostly autonomous, clear and educational):
"### 📖 What is TEA (Test Architecture Enterprise)?
TEA is a comprehensive test architecture framework that provides:
- 9 Workflows: Teach Me Testing, Framework, Test Design, ATDD, Automate, Test Review, Trace, NFR Assessment, CI
- 35 Knowledge Fragments: Distilled expertise on patterns, best practices, Playwright Utils
- Quality Standards: Definition of Done with execution limits (no flaky tests, no hard waits, etc.)
- Risk-Based Testing: P0-P3 matrix for prioritizing test coverage
Why TEA exists: Testing knowledge doesn't scale through manual teaching. TEA makes testing expertise accessible through:
- Structured workflows that guide you step-by-step
- Documentation (32 docs) organized by type (tutorials, how-to, explanation, reference)
- Knowledge fragments for just-in-time learning
- Online resources: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/>
TEA Engagement Models:
1. TEA Lite (30 min): Quick start - run Automate workflow, generate tests 2. TEA Solo: Use workflows individually as needed 3. TEA Integrated: Full lifecycle - Framework → Test Design → ATDD/Automate → Review → Trace 4. TEA Enterprise: Add NFR Assessment + CI integration for compliance 5. TEA Brownfield: Adapt TEA for existing test suites
Today we're experiencing TEA Lite!"
4. Teaching: TEA Lite Quick Start
Present this content (adapt examples based on user role from progress file):
"### 🚀 TEA Lite: Your First Workflow
The Automate workflow generates tests for your application automatically.
How it works:
1. You describe what needs testing 2. TEA analyzes your app structure 3. Workflow generates test files with TEA best practices 4. You review and run the tests
{If role == QA:} For QA Engineers: This helps you quickly expand test coverage without writing every test manually. Focus on test design, let TEA handle boilerplate.
{If role == Dev:} For Developers: This generates tests following best practices so you can focus on implementation. Tests are maintainable and follow fixture patterns.
{If role == Lead:} For Tech Leads: This standardizes test architecture across your team. Everyone writes tests the same way using TEA patterns.
{If role == VP:} For VPs: This scales testing across teams without manual training. New hires can generate quality tests from day one.
Let me show you how the Automate workflow works conceptually:
1. Input: You provide targets (features/pages to test) 2. TEA analyzes: Understands your app structure 3. Test generation: Creates API and/or E2E tests 4. Output: Test files in your test suite with proper fixtures
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/>
Note: We won't actually run the workflow now (you can do that on your project later), but you understand the concept."
5. Teaching: Key Concepts
Present this content:
"### 🎯 Key Concepts from Session 1
1. TEA is a framework: Not just docs, but executable workflows that guide you
2. Risk-based testing: Prioritize what matters (P0 critical, P3 nice-to-have)
3. Quality standards: Definition of Done ensures reliable tests
- No flaky tests
- No hard waits/sleeps
- Stateless & parallelizable
- Self-cleaning tests
4. Engagement models: Choose how much TEA you need (Lite → Solo → Integrated → Enterprise → Brownfield)
5. Knowledge fragments: 42 fragments for deep-dive topics when you need them
- Testing patterns (fixtures, network-first, data factories)
- Playwright Utils (api-request, network-recorder, recurse)
- Configuration & governance (CI, feature flags, risk)
You've now experienced TEA Lite! In future sessions, we'll go deeper."
6. Quiz: Validate Understanding
Display:
"### ✅ Quick Knowledge Check
Let me ask you 3 questions to validate your understanding. Passing score: ≥70% (2 of 3 correct)."
Question 1:
"Question 1 of 3:
What is the primary purpose of TEA?
A) Replace all testing tools with a single framework B) Make testing expertise accessible through structured workflows and knowledge C) Automate 100% of test writing D) Only works for Playwright tests
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: B
- If correct: "✅ Correct! TEA makes testing expertise accessible and scalable."
- If incorrect: "❌ Not quite. TEA's purpose is to make testing expertise accessible through structured workflows and knowledge (B). It's not about replacing tools or automating everything."
Store result (1 point if correct, 0 if incorrect)
Question 2:
"Question 2 of 3:
What does the P0-P3 risk matrix help with?
A) Prioritizing test coverage based on criticality B) Grading test code quality C) Measuring test execution speed D) Tracking bug severity
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: A
- If correct: "✅ Correct! P0-P3 helps prioritize what to test based on risk and criticality."
- If incorrect: "❌ The P0-P3 matrix is about prioritizing test coverage (A). P0 = critical features like login, P3 = nice-to-have like tooltips."
Store result
Question 3:
"Question 3 of 3:
Which TEA engagement model is best for quick value in 30 minutes?
A) TEA Enterprise B) TEA Lite C) TEA Integrated D) TEA Brownfield
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: B
- If correct: "✅ Correct! TEA Lite is the 30-minute quick start approach."
- If incorrect: "❌ TEA Lite (B) is the quick start approach. Enterprise and Integrated are more comprehensive."
Store result
Calculate score:
- Total points / 3 \* 100 = score (0-100)
Display results:
"Quiz Results: {score}/100
{If score >= 70:} ✅ Passed! You've demonstrated understanding of Session 1 concepts.
{If score < 70:} ⚠️ Below passing threshold. Would you like to:
- [R] Review the content again
- [C] Continue anyway (your score will be recorded)
{Wait for response if < 70, handle R or C}"
7. Generate Session Notes
Create {sessionNotesFile} using {sessionNotesTemplate} with:
---
session_id: session-01-quickstart
session_name: 'Session 1: Quick Start'
user: { user_name }
role: { role }
completed_date: { current_date }
score: { score }
duration: '30 min'
---
# Session 1: Quick Start - Session Notes
**Learner:** {user_name} ({role})
**Completed:** {current_date}
**Score:** {score}/100
**Duration:** 30 min
---
## Session Objectives
- Understand what TEA is and why it exists
- Learn TEA Lite quick start approach
- Conceptually understand the Automate workflow
- Explore TEA engagement models
---
## Key Concepts Covered
1. **TEA Framework:** 9 workflows + 42 knowledge fragments + quality standards
2. **Risk-Based Testing:** P0-P3 prioritization matrix
3. **Quality Standards:** Definition of Done (no flaky tests, no hard waits, stateless, self-cleaning)
4. **Engagement Models:** Lite, Solo, Integrated, Enterprise, Brownfield
5. **Automate Workflow:** Generates tests automatically with TEA best practices
---
## TEA Resources Referenced
### Documentation
- TEA Overview: https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/tea-overview/
- TEA Lite Quickstart: https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/tutorials/tea-lite-quickstart/
- Automate Workflow: https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/how-to/workflows/run-automate/
### Knowledge Fragments
- (None used in this session - knowledge fragments explored in Session 7)
### Online Resources
- TEA Website: https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/
- Knowledge Base: https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/reference/knowledge-base/
---
## Quiz Results
**Score:** {score}/100
### Questions & Answers
1. What is the primary purpose of TEA? → {user_answer} ({correct/incorrect})
2. What does the P0-P3 risk matrix help with? → {user_answer} ({correct/incorrect})
3. Which TEA engagement model is best for quick value? → {user_answer} ({correct/incorrect})
---
## Key Takeaways
- TEA makes testing expertise accessible at scale
- Start with TEA Lite (30 min) for immediate value
- Risk-based testing prioritizes what matters (P0 critical features first)
- Quality standards ensure reliable, maintainable tests
- 5 engagement models let you choose the right level of TEA adoption
---
## Next Recommended Session
{If experience_level == 'beginner':}
**Session 2: Core Concepts** - Learn testing fundamentals and TEA principles
{If experience_level == 'intermediate':}
**Session 2 or 3** - Review concepts or dive into architecture patterns
{If experience_level == 'experienced':}
**Session 7: Advanced Patterns** - Explore 42 knowledge fragments
---
**Generated by:** TEA Academy - Teach Me Testing Workflow
**Session Path:** Session 1 of 78. Update Progress File (Session Complete)
Load {progressFile} and update session-01-quickstart:
- Set
status: 'completed' - Set
completed_date: {current_date} - Set
score: {score} - Set
notes_artifact: '{sessionNotesFile}'
Update progress metrics:
- If previous status for
session-01-quickstartis notcompleted, incrementsessions_completedby 1 (otherwise leave unchanged) - Calculate
completion_percentage: (sessions_completed / 7) * 100 - Set
next_recommended: 'session-02-concepts'
Update stepsCompleted array:
- Append 'step-04-session-01' to stepsCompleted array
- Update lastStep: 'step-04-session-01'
Save the updated progress file.
9. Session Complete Message
Display:
"🎉 Session 1 Complete!
Your Score: {score}/100
Session notes saved: {sessionNotesFile}
You've completed your first step in TEA Academy! You now understand what TEA is, how TEA Lite works, and the different engagement models.
Next: You'll return to the session menu where you can choose Session 2 or explore any other session.
Progress: {completion_percentage}% complete ({sessions_completed} of 7 sessions)"
10. Present MENU OPTIONS
Display: Select an Option: [A] Advanced Elicitation [P] Party Mode [C] Continue to Session Menu
EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to session menu when user selects 'C'
- After other menu items execution, return to this menu
Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
- IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
- IF C: Progress file already updated in step 8, then load, read entire file, then execute {nextStepFile}
- IF Any other: help user, then Redisplay Menu Options
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Teaching content presented clearly
- Examples adapted to user role
- Quiz administered with 3 questions
- Score calculated correctly (0-100)
- Session notes generated with all required sections
- Progress file updated (status: completed, score, notes_artifact)
- stepsCompleted array updated with 'step-04-session-01'
- Completion percentage recalculated
- Next recommended session set
- User routed back to session menu hub
❌ SYSTEM FAILURE:
- Skipping quiz
- Not adapting examples to user role
- Not generating session notes
- Not updating progress file
- Not updating stepsCompleted array
- Not calculating completion percentage
- Not routing back to hub
- Loading all docs at once (should be just-in-time)
Master Rule: Teach, quiz, generate notes, update progress, return to hub. This pattern repeats for all 7 sessions.
Step 4: Session 2 - Core Concepts
STEP GOAL:
To teach testing fundamentals including risk-based testing, TEA quality standards (Definition of Done), and testing as engineering philosophy in a 45-minute session.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
- ✅ Together we build their testing knowledge progressively
Step-Specific Rules:
- 🎯 Focus ONLY on Session 2 content (Core Concepts)
- 🚫 FORBIDDEN to skip ahead to other sessions
- 💬 Approach: Teach fundamentals, provide examples, quiz understanding
- 🚪 Teaching is mostly autonomous, quiz is collaborative
- 📚 Reference TEA docs and knowledge fragments
EXECUTION PROTOCOLS:
- 🎯 Load TEA docs just-in-time
- 💾 Generate session notes after completion
- 📖 Update progress file with session completion and score
- 🚫 FORBIDDEN to skip quiz - validates understanding
- ⏭️ Always return to session menu hub after completion
CONTEXT BOUNDARIES:
- Available context: Progress file with user role/experience
- Focus: Session 2 - Testing fundamentals and TEA principles
- Limits: Only Session 2 content
- Dependencies: Progress file exists with assessment data
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
1. Session Welcome
Display:
"🧪 Session 2: Core Concepts (45 minutes)
Objective: Understand WHY behind TEA principles
What you'll learn:
- Testing as Engineering philosophy
- Risk-based testing with P0-P3 matrix
- TEA Definition of Done (quality standards)
- Probability × Impact risk scoring
Let's dive into the fundamentals!"
2. Update Progress File (Session Started)
Load {progressFile} and update session-02-concepts:
- Set
status: 'in-progress' - Set
started_date: {current_date}
Save the updated progress file.
3. Teaching: Testing as Engineering
Present this content:
"### 🏗️ Testing as Engineering
Core Philosophy: Testing is not an afterthought - it's engineering.
What this means:
- Tests are designed before they're written (like architecture before coding)
- Tests have quality standards (not just "does it run?")
- Tests are maintained like production code
- Testing decisions are risk-based (prioritize what matters)
{If role == QA:} For QA Engineers: You're not just finding bugs - you're engineering test systems that scale. Design before write, maintain like production code.
{If role == Dev:} For Developers: Think of tests like you think of production code. Design patterns, refactoring, DRY principles - they all apply to tests.
{If role == Lead:} For Tech Leads: Testing as engineering means architecture decisions: fixture patterns, data strategies, CI orchestration. Not just "write more tests."
{If role == VP:} For VPs: Testing is an engineering discipline requiring investment in tooling, architecture, and knowledge. Not a checklist item.
Key Principle: If you wouldn't accept sloppy production code, don't accept sloppy test code.
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/testing-as-engineering/>"
4. Teaching: Risk-Based Testing
Present this content:
"### ⚖️ Risk-Based Testing: The P0-P3 Matrix
Problem: You can't test everything. How do you prioritize?
Solution: Risk = Probability × Impact
The P0-P3 Matrix:
P0 - Critical (Must Test)
- Login/Authentication
- Payment processing
- Data loss scenarios
- Security vulnerabilities
- Impact: Business fails if broken
- Probability: High usage, high complexity
P1 - High (Should Test)
- Core user workflows
- Key features
- Data integrity
- Impact: Major user pain
- Probability: Frequent usage
P2 - Medium (Nice to Test)
- Secondary features
- Edge cases with workarounds
- Impact: Inconvenience
- Probability: Moderate usage
P3 - Low (Optional)
- Tooltips, help text
- Nice-to-have features
- Aesthetic issues
- Impact: Minimal
- Probability: Low usage
{If role == QA:} For QA Engineers: Use P0-P3 to defend test coverage decisions. "We have 100% P0 coverage, 80% P1" is better than "we have 50% coverage overall."
{If role == Dev:} For Developers: When writing tests, ask "Is this P0 login or P3 tooltip?" Focus your time accordingly.
{If role == Lead:} For Tech Leads: P0-P3 helps allocate test automation budget. Mandate P0/P1 automation, P2/P3 is cost-benefit analysis.
{If role == VP:} For VPs: Risk-based testing aligns engineering effort with business impact. Metrics that matter: P0 coverage, not lines of code.
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/risk-based-testing/>
Knowledge Fragment: probability-impact.md defines scoring criteria"
5. Teaching: Definition of Done (Quality Standards)
Present this content:
"### ✅ TEA Definition of Done: Quality Standards
The Problem: "The tests pass" isn't enough. What about quality?
TEA Definition of Done ensures:
1. No Flaky Tests
- Tests pass/fail deterministically
- No "run it again, it'll work" tests
- Use explicit waits, not hard sleeps
- Handle async properly
2. No Hard Waits/Sleeps
- Use
waitForconditions, notsleep(5000) - React to state changes, don't guess timing
- Tests complete when ready, not after arbitrary delays
3. Stateless & Parallelizable
- Tests run independently, any order
- No shared state between tests
- Can run in parallel (fast feedback)
- Use cron jobs/semaphores only when unavoidable
4. No Order Dependency
- Every
it/describe/contextblock works in isolation - Supports
.onlyexecution for debugging - Tests don't depend on previous tests
5. Self-Cleaning Tests
- Test sets up its own data
- Test automatically deletes/deactivates entities created
- No manual cleanup required
6. Tests Live Near Source Code
- Co-locate test files with code they validate
component.tsx→component.spec.tsxin same folder
7. Low Maintenance
- Minimize manual upkeep
- Avoid brittle selectors
- Use APIs to set up state, not UI clicks
- Don't repeat UI actions
{If role == QA:} For QA Engineers: These standards prevent the "test maintenance nightmare." Upfront investment in quality = long-term stability.
{If role == Dev:} For Developers: Write tests you'd want to inherit. No flaky tests, no "run twice" culture, no mystery failures.
{If role == Lead:} For Tech Leads: Enforce these standards in code review. Flaky test PRs don't merge. Period.
{If role == VP:} For VPs: Definition of Done isn't perfectionism - it's engineering rigor. Flaky tests erode trust in CI/CD.
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/test-quality-standards/>
Knowledge Fragment: test-quality.md has execution limits and criteria"
6. Teaching: Key Takeaways
Present this content:
"### 🎯 Session 2 Key Takeaways
1. Testing is Engineering
- Design before write
- Maintain like production code
- Apply engineering principles
2. Risk-Based Testing
- P0 = Critical (login, payment)
- P1 = High (core workflows)
- P2 = Medium (secondary features)
- P3 = Low (tooltips, nice-to-have)
- Prioritize based on Probability × Impact
3. Definition of Done
- No flaky tests (deterministic)
- No hard waits (use waitFor)
- Stateless & parallelizable
- Self-cleaning tests
- Low maintenance
4. Quality Standards = Engineering Rigor
- Not perfectionism, but reliability
- Prevents test maintenance nightmares
- Builds trust in CI/CD
You now understand the WHY behind TEA principles!"
7. Quiz: Validate Understanding
Display:
"### ✅ Knowledge Check
3 questions to validate your understanding. Passing: ≥70% (2 of 3 correct)."
Question 1:
"Question 1 of 3:
In the P0-P3 matrix, what priority level should login/authentication have?
A) P3 - Low priority B) P2 - Medium priority C) P1 - High priority D) P0 - Critical priority
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: D
- If correct: "✅ Correct! Login/authentication is P0 - critical. Business fails if broken."
- If incorrect: "❌ Login/authentication is P0 - Critical (D). It's high usage, high impact, and business-critical."
Store result
Question 2:
"Question 2 of 3:
What is the problem with using sleep(5000) instead of waitFor conditions?
A) It makes tests slower B) It's a hard wait that doesn't react to state changes (violates DoD) C) It uses too much memory D) It's not supported in modern frameworks
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: B
- If correct: "✅ Correct! Hard waits don't react to state - they guess timing. Use
waitForto react to conditions." - If incorrect: "❌ The issue is that hard waits don't react to state changes (B). They guess timing instead of waiting for conditions. This violates TEA Definition of Done."
Store result
Question 3:
"Question 3 of 3:
What does "self-cleaning tests" mean in TEA Definition of Done?
A) Tests automatically fix their own bugs B) Tests delete/deactivate entities they create during testing C) Tests run faster by cleaning up code D) Tests remove old test files
Your answer (A, B, C, or D):"
Wait for response. Validate:
- Correct answer: B
- If correct: "✅ Correct! Self-cleaning tests clean up their data - no manual cleanup needed."
- If incorrect: "❌ Self-cleaning means tests delete/deactivate entities they created (B). No manual cleanup required."
Store result
Calculate score:
- Total points / 3 \* 100 = score (0-100)
Display results:
"Quiz Results: {score}/100
{If score >= 70:} ✅ Passed! You understand core testing concepts.
{If score < 70:} ⚠️ Below passing. Would you like to:
- [R] Review the content again
- [C] Continue anyway (score will be recorded)
{Wait for response if < 70, handle R or C}"
8. Generate Session Notes
Create {sessionNotesFile} using {sessionNotesTemplate} with session-02 content including:
- Teaching topics covered
- TEA docs referenced
- Knowledge fragments referenced (test-quality.md, probability-impact.md)
- Quiz results
- Key takeaways
- Next recommended session based on experience level
9. Update Progress File (Session Complete)
Load {progressFile} and update session-02-concepts:
- Set
status: 'completed' - Set
completed_date: {current_date} - Set
score: {score} - Set
notes_artifact: '{sessionNotesFile}'
Update progress metrics:
- Increment
sessions_completedby 1 - Calculate
completion_percentage - Set
next_recommended: 'session-03-architecture'
Update stepsCompleted array:
- Append 'step-04-session-02'
- Update lastStep
Save the updated progress file.
10. Session Complete Message
Display:
"🎉 Session 2 Complete!
Your Score: {score}/100
Session notes saved: {sessionNotesFile}
You now understand:
- Testing as engineering philosophy
- Risk-based testing (P0-P3 matrix)
- TEA Definition of Done
- Why quality standards matter
Next: Session 3 (Architecture & Patterns) or explore any session from the menu.
Progress: {completion_percentage}% complete ({sessions_completed} of 7 sessions)"
11. Present MENU OPTIONS
Display: Select an Option: [A] Advanced Elicitation [P] Party Mode [C] Continue to Session Menu
Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
- IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
- IF C: Progress file already updated, then load, read entire file, then execute {nextStepFile}
- IF Any other: help user, then redisplay menu
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Teaching content presented (Testing as Engineering, Risk-based, DoD)
- Examples adapted to user role
- Quiz administered (3 questions)
- Score calculated correctly
- Session notes generated
- Progress file updated
- stepsCompleted array updated
- User routed back to hub
❌ SYSTEM FAILURE:
- Skipping quiz
- Not adapting to role
- Not generating notes
- Not updating progress
- Not routing to hub
Master Rule: Teach, quiz, generate notes, update progress, return to hub.
Step 4: Session 3 - Architecture & Patterns
STEP GOAL:
To teach TEA architecture patterns including fixture composition, network-first patterns, and step-file architecture in a 60-minute session.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
- 📋 YOU ARE A FACILITATOR, not a content generator
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config
{communication_language}
Role Reinforcement:
- ✅ You are a Master Test Architect and Teaching Guide
- ✅ We engage in collaborative learning, not lectures
- ✅ You bring expertise in TEA methodology and teaching pedagogy
- ✅ Learner brings their role context, experience, and learning goals
Step-Specific Rules:
- 🎯 Focus ONLY on Session 3 content (Architecture & Patterns)
- 🚫 FORBIDDEN to skip ahead to other sessions
- 💬 Approach: Teach patterns, provide examples, quiz understanding
EXECUTION PROTOCOLS:
- 🎯 Load TEA docs just-in-time
- 💾 Generate session notes after completion
- 📖 Update progress file with session completion and score
- ⏭️ Return to session menu hub after completion
CONTEXT BOUNDARIES:
- Available context: Progress file with user role/experience
- Focus: Session 3 - Architecture patterns
- Dependencies: Progress file exists
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly.
1. Session Welcome
"🧪 Session 3: Architecture & Patterns (60 minutes)
Objective: Understand TEA patterns and architecture
What you'll learn:
- Fixture architecture and composition
- Network-first patterns
- Data factories and test setup
- Step-file architecture (the pattern this workflow uses!)
Let's explore TEA architecture!"
2. Update Progress (Started)
Load {progressFile}, update session-03-architecture:
status: 'in-progress'started_date: {current_date}
3. Teaching: Fixture Architecture
"### 🏗️ Fixture Architecture
The Problem: Tests have setup/teardown boilerplate everywhere.
TEA Solution: Composable fixtures
Fixture Composition Pattern:
// Base fixtures
const baseFixtures = {
page: async ({}, use) => {
/* ... */
},
};
// Composed fixtures
const authFixtures = {
authenticatedPage: async ({ page }, use) => {
await page.goto('/login');
await login(page);
await use(page);
},
};
// Merge and use
test.use(mergeTests(baseFixtures, authFixtures));Benefits:
- DRY: Define once, use everywhere
- Composable: Build complex fixtures from simple ones
- Automatic cleanup: Fixtures handle teardown
- Type-safe: Full TypeScript support
{Role-adapted example based on user role}
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/fixture-architecture/> Knowledge Fragment: fixture-architecture.md, fixtures-composition.md"
4. Teaching: Network-First Patterns
"### 🌐 Network-First Patterns
The Problem: Flaky tests due to network timing issues.
TEA Solution: Intercept and control network
Network-First Pattern:
// BEFORE the action, set up network interception
await page.route('/api/users', (route) => {
route.fulfill({ json: mockUsers });
});
// THEN trigger the action
await page.click('Load Users');
// Network is already mocked - no race conditionWhy Network-First:
- Prevents race conditions
- Deterministic test behavior
- Fast (no real API calls)
- Control error scenarios
{Role-adapted example}
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/network-first-patterns/> Knowledge Fragment: network-first.md, intercept-network-call.md"
5. Teaching: Data Factories
"### 🏭 Data Factories
The Problem: Hard-coded test data everywhere.
TEA Solution: Factory functions
Factory Pattern:
function createUser(overrides = {}) {
return {
id: faker.uuid(),
email: faker.email(),
role: 'user',
...overrides,
};
}
// Use in tests
const admin = createUser({ role: 'admin' });
const user = createUser(); // defaultsBenefits:
- No hardcoded data
- Easy to override fields
- Consistent test data
- Self-documenting
{Role-adapted example}
Knowledge Fragment: data-factories.md"
6. Teaching: Step-File Architecture
"### 📋 Step-File Architecture
This workflow uses step-file architecture!
Pattern:
- Micro-file design: Each step is self-contained
- Just-in-time loading: Only current step in memory
- Sequential enforcement: No skipping steps
- State tracking: Progress saved between steps
Why:
- Disciplined execution
- Clear progression
- Resumable (continuable workflows)
- Maintainable (one file per step)
You're experiencing this right now: Each session is a step file!
Documentation: <https://bmad-code-org.github.io/bmad-method-test-architecture-enterprise/explanation/step-file-architecture/>"
7. Quiz (3 questions)
"### ✅ Knowledge Check"
Q1: "What is the main benefit of fixture composition? A) Faster test execution B) DRY - define once, reuse everywhere C) Better error messages D) Automatic screenshot capture"
Correct: B
Q2: "Why is 'network-first' better than mocking after the action? A) It's faster B) It prevents race conditions C) It uses less memory D) It's easier to write"
Correct: B
Q3: "What pattern does this teaching workflow use? A) Page Object Model B) Behavior Driven Development C) Step-File Architecture D) Test Pyramid"
Correct: C
Calculate score, handle <70% retry option.
8. Generate Session Notes
Create {sessionNotesFile} with:
- Session 3 content
- Topics: Fixtures, network-first, data factories, step-file architecture
- TEA docs referenced
- Knowledge fragments: fixture-architecture.md, network-first.md, data-factories.md
- Quiz results
- Next recommended: session-04-test-design
9. Update Progress (Completed)
Update session-03-architecture:
status: 'completed'completed_date: {current_date}score: {score}notes_artifact
Increment sessions_completed, update completion_percentage. Append 'step-04-session-03' to stepsCompleted.
10. Complete Message
"🎉 Session 3 Complete! Score: {score}/100 You understand TEA architecture patterns! Progress: {completion_percentage}%"
11. Menu
[A] Advanced Elicitation [P] Party Mode [C] Continue to Session Menu
Return to {nextStepFile}
---
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Architecture patterns taught
- Quiz administered
- Notes generated
- Progress updated
- Returned to hub
❌ SYSTEM FAILURE:
- Skipping patterns
- Not generating notes
- Not updating progress
Master Rule: Teach patterns, quiz, update, return to hub.
Edit Step 1: Assess What to Edit
STEP GOAL:
To identify what the user wants to edit in the teach-me-testing workflow and gather requirements for the modifications.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 NEVER generate content without user input
- 📖 CRITICAL: Read complete step file before action
- ✅ SPEAK OUTPUT In {communication_language}
Role Reinforcement:
- ✅ You are a workflow architect helping with modifications
- ✅ Collaborative dialogue for understanding edit needs
Step-Specific Rules:
- 🎯 Focus on understanding what to edit
- 🚫 FORBIDDEN to make edits yet
- 💬 Ask questions to clarify requirements
EXECUTION PROTOCOLS:
- 🎯 Understand edit requirements
- 💾 Document what needs editing
- 📖 Prepare for edits in next step
MANDATORY SEQUENCE
1. Welcome to Edit Mode
"Edit Mode: Teach Me Testing Workflow
What would you like to edit?
Common edits:
- Update session content (new concepts, updated examples)
- Modify quiz questions
- Add/remove knowledge fragments from session 7
- Update TEA resource references
- Change session durations or structure
- Update role-based examples
Tell me what you'd like to change."
2. Gather Edit Requirements
Ask targeted questions based on their response:
If editing session content:
- Which session? (1-7)
- What specific content needs updating?
- Why the change? (outdated, incorrect, needs improvement)
If editing quiz questions:
- Which session's quiz?
- Which question(s)?
- What's wrong with current questions?
If editing session 7 fragments:
- Add new fragment category?
- Update existing fragment references?
- Change organization?
If editing templates:
- Progress template?
- Session notes template?
- Certificate template?
- What fields need changing?
If editing data files:
- Curriculum structure?
- Role customizations?
- Resource mappings?
3. Load Current Content
Based on what they want to edit, load the relevant files:
- Session step files (steps-c/step-04-session-\*.md)
- Templates (
templates/*.mdor*.yaml) - Data files (data/\*.yaml)
Show user the current content.
4. Document Edit Plan
"Edit Plan:
Target Files:
- {list files to be modified}
Changes Required:
- {list specific changes}
Reason:
- {why these edits are needed}
Ready to proceed with edits?"
5. Menu
Display: Select an Option: [A] Advanced Elicitation [P] Party Mode [C] Continue to Apply Edits
Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}, redisplay menu
- IF P: Execute {partyModeWorkflow}, redisplay menu
- IF C: Load, read entire file, then execute {nextStepFile}
- IF Any other: help user, redisplay menu
---
🚨 SUCCESS METRICS
✅ Edit requirements clearly understood, target files identified, edit plan documented, user approves plan.
Master Rule: Understand before editing. Get clear requirements first.
Related skills
FAQ
Can I pause and resume bmad-teach-me-testing?
Yes. It uses continuable architecture with state persistence across sessions, so users can pause and resume anytime and jump to any session based on experience.
Is bmad-teach-me-testing meant for teams?
Yes. It is scalable to entire teams without requiring instructor time, learning over one to two weeks.