Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

step-04-coverage-plan.md 4.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. ---
  2. name: 'step-04-coverage-plan'
  3. description: 'Design test coverage, priorities, execution strategy, and estimates'
  4. nextStepFile: '{skill-root}/steps-c/step-05-generate-output.md'
  5. outputFile: '{test_artifacts}/test-design-progress.md'
  6. ---
  7. # Step 4: Coverage Plan & Execution Strategy
  8. ## STEP GOAL
  9. Create the test coverage matrix, prioritize scenarios, and define execution strategy, resource estimates, and quality gates.
  10. ## MANDATORY EXECUTION RULES
  11. - 📖 Read the entire step file before acting
  12. - ✅ Speak in `{communication_language}`
  13. - 🚫 Avoid redundant coverage across test levels
  14. ---
  15. ## EXECUTION PROTOCOLS:
  16. - 🎯 Follow the MANDATORY SEQUENCE exactly
  17. - 💾 Record outputs before proceeding
  18. - 📖 Load the next step only when instructed
  19. ## CONTEXT BOUNDARIES:
  20. - Available context: config, loaded artifacts, and knowledge fragments
  21. - Focus: this step's goal only
  22. - Limits: do not execute future steps
  23. - Dependencies: prior steps' outputs (if any)
  24. ## MANDATORY SEQUENCE
  25. **CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise.
  26. ## 1. Coverage Matrix
  27. For each requirement or risk-driven scenario:
  28. - Decompose into atomic test scenarios
  29. - Select **test level** (E2E / API / Component / Unit) using `test-levels-framework.md`
  30. - Ensure no duplicate coverage across levels
  31. - Assign priorities (P0–P3) using `test-priorities-matrix.md`
  32. - Map NFR-derived risks to planned validation scenarios and evidence sources
  33. **Priority rules:**
  34. - P0: Blocks core functionality + high risk + no workaround
  35. - P1: Critical paths + medium/high risk
  36. - P2: Secondary flows + low/medium risk
  37. - P3: Nice-to-have, exploratory, benchmarks
  38. ---
  39. ## 2. NFR Coverage and Evidence Plan
  40. For each in-scope NFR category:
  41. - Map the NFR to one or more planned validation scenarios
  42. - Select the right validation level/tool (for example: API/UI tests for auth and resilience, k6 for load/performance, CI/static analysis for maintainability, monitoring/logs for reliability)
  43. - Identify the expected evidence artifact that `nfr-assess` should consume later
  44. - Mark missing thresholds or missing evidence sources as blockers, risks, or assumptions
  45. Keep this concise. Do not include full NFR evidence assessment tables or final PASS/CONCERNS/FAIL decisions in test design.
  46. ---
  47. ## 3. Execution Strategy (Keep Simple)
  48. Use a **PR / Nightly / Weekly** model:
  49. - **PR**: All functional tests if <15 minutes
  50. - **Nightly/Weekly**: Long-running or expensive suites (perf, chaos, large datasets)
  51. - Avoid re-listing all tests (refer to coverage plan)
  52. ---
  53. ## 4. Resource Estimates (Ranges Only)
  54. Provide intervals (no false precision):
  55. - P0: e.g., "~25–40 hours"
  56. - P1: e.g., "~20–35 hours"
  57. - P2: e.g., "~10–30 hours"
  58. - P3: e.g., "~2–5 hours"
  59. - Total and timeline as ranges
  60. ---
  61. ## 5. Quality Gates
  62. Define thresholds:
  63. - P0 pass rate = 100%
  64. - P1 pass rate ≥ 95%
  65. - High-risk mitigations complete before release
  66. - Coverage target ≥ 80% (adjust if justified)
  67. - NFR validation evidence identified for each in-scope NFR category
  68. - Full NFR PASS/CONCERNS/FAIL status deferred to `nfr-assess` when evidence exists
  69. ---
  70. ### 6. Save Progress
  71. **Save this step's accumulated work to `{outputFile}`.**
  72. - **If `{outputFile}` does not exist** (first save), create it with YAML frontmatter:
  73. ```yaml
  74. ---
  75. workflowStatus: 'in-progress'
  76. totalSteps: 5
  77. stepsCompleted: ['step-04-coverage-plan']
  78. lastStep: 'step-04-coverage-plan'
  79. nextStep: '{nextStepFile}'
  80. lastSaved: '{date}'
  81. ---
  82. ```
  83. Then write this step's output below the frontmatter.
  84. - **If `{outputFile}` already exists**, update:
  85. - Set `workflowStatus: 'in-progress'`
  86. - Set `totalSteps: 5`
  87. - Add `'step-04-coverage-plan'` to `stepsCompleted` array (only if not already present)
  88. - Set `lastStep: 'step-04-coverage-plan'`
  89. - Set `nextStep: '{nextStepFile}'`
  90. - Set `lastSaved: '{date}'`
  91. - Append this step's output to the appropriate section of the document.
  92. Load next step: `{nextStepFile}`
  93. ## 🚨 SYSTEM SUCCESS/FAILURE METRICS:
  94. ### ✅ SUCCESS:
  95. - Step completed in full with required outputs
  96. ### ❌ SYSTEM FAILURE:
  97. - Skipped sequence steps or missing outputs
  98. **Master Rule:** Skipping steps is FORBIDDEN.