QA workflow
Address Form Testing Checklist
Use this checklist before releasing a registration, checkout, CRM, or shipping address form.
Field behavior
- Country selection changes labels and validation rules.
- Address Line 2 is optional and does not block submission when empty.
- Postal-code validation accepts letters, spaces, hyphens, and leading zeros when appropriate.
- State, province, region, or prefecture fields are country-aware.
Data and layout
- Long names and long street lines wrap cleanly on mobile.
- CSV export preserves commas, quotes, Unicode text, and line breaks.
- Saved records display in the same order users entered them.
- Error messages explain what to fix without assuming one country format.
Safety checks
Use synthetic sample data in test environments. Do not mix random addresses with real customer identities, real deliveries, or compliance checks.
Test case matrix
| Scenario | Sample input | Expected result |
|---|---|---|
| Minimal U.S. address | Street, city, state, 5-digit ZIP | Submits and stores each field separately. |
| Secondary line | Apt 4B or Suite 1200 | Address Line 2 remains optional and visible. |
| Leading zero | 02108 | Value remains text after save, import, and export. |
| International format | UK postcode or Japanese postal code | Country-specific rules replace U.S.-only validation. |
| Long content | Long recipient and street names | Mobile layout wraps without overlap or data loss. |
Release evidence to retain
A checked box is not enough for a regression suite. For each market, retain the input record, selected country, expected normalized fields, actual saved fields, viewport, build number, and a screenshot or exported row. This makes a later failure reproducible instead of relying on a tester's memory.
| Checkpoint | Pass condition | Useful evidence |
|---|---|---|
| Client validation | Valid local formats submit; invalid formats show a field-specific message. | Input and error-state screenshot |
| API payload | No line is silently dropped, renamed, or converted to a number. | Redacted request payload |
| Persistence | Reloaded values match the submitted Unicode and spacing. | Saved record comparison |
| Export/import | A round trip preserves quotes, commas, leading zeroes, and line order. | CSV or JSON diff |
Negative cases that should fail
Include an empty required locality, a postal code from the wrong country, a value beyond the documented field limit, unsupported control characters, and a country change after fields are populated. A good form rejects only the invalid component, preserves the remaining input, and explains the correction without clearing the address.