Files
nick-doc/11 - Testing/Testing Expansion Backlog.md
2026-06-06 10:35:47 +04:00

146 lines
4.5 KiB
Markdown

---
title: Testing Expansion Backlog
tags: [testing, backlog, qa, release]
created: 2026-06-06
---
# Testing Expansion Backlog
This is the testing backlog to complete before expanding the escrow test suite
or claiming release confidence.
## P0 - Product Policy Gaps
### Physical product grace period
Need implementation and tests for:
- seller marks delivery;
- buyer receives delivery window;
- grace period starts;
- buyer can confirm delivery before expiry;
- buyer can dispute before expiry;
- funds release only after buyer confirmation, no dispute, or grace expiry.
Acceptance tests:
| ID | Expected |
|---|---|
| RELEASE-PHYS-001 | Physical delivery starts hold/grace timer. |
| RELEASE-PHYS-002 | Buyer confirmation before expiry makes funds releasable. |
| RELEASE-PHYS-003 | Dispute before expiry blocks release. |
| RELEASE-PHYS-004 | Grace expiry without dispute makes funds releasable. |
### Immediate release for gift cards/digital goods
Need implementation and tests for:
- product type is gift card or digital;
- seller proof is required immediately;
- buyer acceptance or product policy triggers immediate/near-immediate release;
- dispute path can still stop release if policy includes a short challenge window.
Acceptance tests:
| ID | Expected |
|---|---|
| RELEASE-DIGI-001 | Gift card delivery does not use physical-product grace period. |
| RELEASE-DIGI-002 | Gift card proof advances to releasable immediately after buyer acceptance. |
| RELEASE-DIGI-003 | Wrong/missing proof blocks release. |
## P0 - Dispute Coverage
The dispute mechanism is not complete enough for end-to-end fund movement.
Tests needed:
| ID | Scenario | Expected |
|---|---|---|
| DISPUTE-001 | Buyer opens dispute after seller delivery, before release | payment/request enters dispute hold |
| DISPUTE-002 | Seller cannot force release while dispute is open | release attempt rejected |
| DISPUTE-003 | Admin resolves for seller | release becomes available |
| DISPUTE-004 | Admin resolves for buyer | refund becomes available |
| DISPUTE-005 | Duplicate dispute resolution | idempotent or rejected safely |
| DISPUTE-006 | Dashboard dispute route vs release-hold route | no route shadowing ambiguity |
## P0 - Payment Negative Tests
Automate:
- wrong token;
- wrong chain;
- wrong destination;
- underpayment;
- duplicate payment;
- late payment after cancelled/expired intent;
- payment with no gas;
- scanner unavailable during payment;
- scanner webhook signature invalid;
- balance check baseline missing or stale.
## P0 - Authorization and ID Boundaries
Add regression tests for cross-store id comparisons:
| Route/action | Required test |
|---|---|
| buyer delivery confirmation | buyer can confirm even when session id and request buyer id use different stores |
| buyer delivery confirmation | non-buyer cannot confirm |
| seller delivery update | only selected seller/admin can deliver |
| offer acceptance | only buyer/admin can accept |
| payment check | only buyer/admin/system can advance payment where applicable |
## P1 - UI/Browser E2E
Add Playwright tests for:
- checkout renders BSC Testnet chain label;
- token contract row shows canonical tUSDT;
- testnet explorer links are generated correctly;
- wrong wallet chain shows switch button;
- insufficient balance warning appears;
- payment submitted screen waits for scanner confirmation;
- paid socket/poll fallback transitions to success.
## P1 - CI and Deployment
Add a deployment smoke checklist artifact after every pipeline:
- backend version endpoint;
- frontend root 200;
- scanner `/health`;
- chain 97 token balance check;
- current Docker image digests;
- last commit SHA per service.
## P1 - Test Data Lifecycle
Need cleanup strategy:
- flag generated users with run id;
- archive or tag generated purchase requests;
- prevent test data from polluting analytics;
- define whether test tx/payment rows are permanent audit evidence or can be purged.
## P2 - Observability
Add dashboards/log queries for:
- scanner intent lifecycle;
- balance-check deltas;
- payment state transitions;
- delivery status changes;
- dispute holds;
- release/refund attempts.
## Suggested Next Automation Order
1. Convert the two-round BSC Testnet E2E procedure into a committed smoke script.
2. Add non-buyer delivery confirmation regression test.
3. Add scanner negative tests for wrong token and underpayment.
4. Implement physical vs digital release policy.
5. Add release-policy tests.
6. Resolve dispute route/policy gaps.
7. Add dispute-to-release/refund E2E tests.