2.1 KiB
2.1 KiB
Testing and acceptance
Test layers
Unit/domain
- vehicle status derivation;
- return mileage handling;
- duplicate scoring and merge rules;
- booking overlap detection;
- status conflict rules;
- outbox retry schedule;
- RAG answer-state mapping.
Database/integration
- migrations from empty database;
- constraints and transaction rollback;
- concurrent return submissions;
- idempotency replay;
- customer merge atomicity;
- outbox claim concurrency;
- demo reset determinism.
API contract
Validate OpenAPI and test authentication, role boundaries, filtering, error shape and service-token routes.
External adapters
Use contract tests with fake HTTP servers for RAGcore, n8n and MCP Hub-facing APIs. Test timeout, unavailable, malformed response and success.
Playwright
The five-minute demo must be automated:
- login as Operations Manager;
- verify dashboard metrics are loaded;
- open active demo booking;
- register odometer-regression return;
- verify issue and queued workflow;
- resolve/merge the duplicate customer scenario;
- ask the damage procedure question and inspect citations;
- inspect audit entries;
- verify responsive navigation at mobile width.
Clean-checkout acceptance
From a clean checkout:
- copy
.env.exampleto.env; - run one documented bootstrap command;
- migrations and seed complete automatically or via one explicit command;
- web and API health become green;
- all automated tests pass;
- no secret is required for the demo provider;
- RAGcore unavailable state is clear and operational pages still work;
- n8n unavailable does not roll back a vehicle return;
- MCP provider endpoints are read-only and service-protected;
- no visible route contains dead actions or placeholder data.
Final evidence
Create artifacts/evidence/final-summary.md containing:
- commit/tag;
- exact commands;
- test counts;
- screenshots of the seven main pages;
- RAGcore success and unavailable evidence;
- n8n success and retry evidence;
- MCP tool sample calls;
- known PoC limitations;
- truthful portfolio wording.