3.0 KiB
3.0 KiB
name, description, nextStepFile, outputFile, progressFile
| name | description | nextStepFile | outputFile | progressFile |
|---|---|---|---|---|
| step-04-docs-and-scripts | Document setup and add package.json scripts | ./step-05-validate-and-summary.md | {test_dir}/README.md | {test_artifacts}/framework-setup-progress.md |
Step 4: Documentation & Scripts
STEP GOAL
Create test documentation and add build/test scripts appropriate for {detected_stack}.
MANDATORY EXECUTION RULES
- 📖 Read the entire step file before acting
- ✅ Speak in
{communication_language}
EXECUTION PROTOCOLS:
- 🎯 Follow the MANDATORY SEQUENCE exactly
- 💾 Record outputs before proceeding
- 📖 Load the next step only when instructed
CONTEXT BOUNDARIES:
- Available context: config, loaded artifacts, and knowledge fragments
- Focus: this step's goal only
- Limits: do not execute future steps
- Dependencies: prior steps' outputs (if any)
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise.
1. tests/README.md
Create {outputFile} and include:
- Setup instructions
- Running tests (local/headed/debug)
- Architecture overview (fixtures, factories, helpers)
- Best practices (selectors, isolation, cleanup)
- CI integration notes
- Knowledge base references
2. Build & Test Scripts
If {detected_stack} is frontend or fullstack:
Add to package.json at minimum:
test:e2e: framework execution command (e.g.,npx playwright test)
If {detected_stack} is backend or fullstack:
Add the idiomatic test commands for the detected framework:
- Python (pytest): Add to
pyproject.tomlscripts orMakefile:pytest,pytest --cov,pytest -m integration - Java (JUnit): Add to
build.gradle/pom.xml:./gradlew test,mvn test,mvn verify(integration) - Go: Add to
Makefile:go test ./...,go test -race ./...,go test -cover ./... - C#/.NET: Add to CI scripts or
Makefile:dotnet test,dotnet test --collect:"XPlat Code Coverage" - Ruby (RSpec): Add to
Gemfilebinstubs orMakefile:bundle exec rspec,bundle exec rspec spec/integration
3. Save Progress
Save this step's accumulated work to {progressFile}.
-
If
{progressFile}does not exist (first save), create it with YAML frontmatter:--- stepsCompleted: ['step-04-docs-and-scripts'] lastStep: 'step-04-docs-and-scripts' lastSaved: '{date}' ---Then write this step's output below the frontmatter.
-
If
{progressFile}already exists, update:- Add
'step-04-docs-and-scripts'tostepsCompletedarray (only if not already present) - Set
lastStep: 'step-04-docs-and-scripts' - Set
lastSaved: '{date}' - Append this step's output to the appropriate section of the document.
- Add
Load next step: {nextStepFile}
🚨 SYSTEM SUCCESS/FAILURE METRICS:
✅ SUCCESS:
- Step completed in full with required outputs
❌ SYSTEM FAILURE:
- Skipped sequence steps or missing outputs Master Rule: Skipping steps is FORBIDDEN.