Skip to content

Quality Assurance

The plan for testing KICKO and how it maps to the docs.

Current state - be honest

Acceptance criteria (Given/When/Then) exist per feature area in every module URD - those are the executable spec. But no TC-<AREA>-NNN test-case files exist yet, so the Traceability Matrix Tests column is truthfully -. Phase 1 is in UAT; the suite below is being authored, money-paths first.

What to test (source of truth)

The module URD acceptance blocks (AC-<AREA>-NN) are the source of truth for "what to test". Every Must requirement should map to at least one test case. The same <AREA> keys URD ⇄ PRD ⇄ TC.

Levels

LevelScopeWhere
Unita package's logicpackage bun run test
Integrationservice seams (Kafka/CDC, payment IPN, invoice signing)per-package integration docs
E2E / UATreal merchant flows end-to-endUAT environment (below)

Priority order - money paths first: payment · tax/invoice · finance · pricing (these document the fewest error scenarios today, so they carry the most risk).

Test-case template

TC files live at content/{en,vi}/modules/<tier>/<module>/tests/TC-<AREA>-NNN.md, keyed to a URD area + AC:

# TC-<AREA>-001 - <title>
- Requirement: URD-<AREA>-NNN · AC: AC-<AREA>-NN
- Pre-conditions / test data:
- Steps:
- Expected (include error codes - 422 / 409 / 404 - for negative cases):
- Type: positive | negative | boundary

Authoring a TC for a module makes its Tests cell in the Traceability Matrix turn from - to ✓ N automatically (the matrix counts the tests/ files).

UAT

ItemValue
Environmentto fill - the UAT cluster URL
Test accountsto fill - a seeded merchant + one account per role
Test datato fill - seeded products / customers / invoices
Entry criteriafeature-complete · smoke test passed · environment up & seeded
Exit criteriaall S0/S1 defects closed · every AC in the release scope verified on a real merchant

Defects

SeverityMeaningTarget
S0blocks release / data loss / money wrongimmediate - hotfix lane
S1a major feature is brokenfixed before release
S2minor, no money impactnext cycle
S3cosmeticbacklog

A dedicated hotfix lane (branch + fast deploy path) handles UAT-blocking bugs - see Roadmap → Phase 1.

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.