Receiving Edge Case Guide
Overview
This guide lists edge cases for Receiving module testing. Use it during QA to find problems before go-live.
Module: Receiving Total Edge Cases: 12 Critical: 4 High: 5 Medium: 3
Severity Definitions
| Level | Meaning |
|---|---|
| CRITICAL | Data loss possible. Must test. |
| HIGH | Major impact on daily work. |
| MEDIUM | Happens sometimes. |
| LOW | Rare, small impact. |
1. Critical Write Sequences
EC-001: PO Header Before Detail
Severity: CRITICAL Source: data-integrity.md
What Happens: PO header must exist before adding lines. If order is wrong, lines are orphaned.
Test Steps:
- Try to add line to non-existent PO
- System should reject
Expected: Error message, no orphan records.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-002: LP Creation Before Inventory
Severity: CRITICAL Source: data-integrity.md
What Happens: License plate record must exist before inventory is added. Wrong order causes lost inventory.
Test Steps:
- Complete a receive
- Check LP record exists
- Check inventory record exists
- Verify LP was created first
Expected: LP created before inventory in all cases.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-003: Inventory Update After Receipt
Severity: CRITICAL Source: data-integrity.md
What Happens: Receipt record must commit before inventory updates. If receipt fails, inventory should not change.
Test Steps:
- Start a receive
- Force error mid-process
- Check inventory did not change
Expected: No partial updates. All or nothing.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
2. Race Conditions
EC-004: Two Users Same PO
Severity: CRITICAL Source: data-integrity.md
What Happens: Two users open same PO at same time. Both try to receive same line.
Test Steps:
- User A opens PO-001
- User B opens PO-001
- User A receives line 1
- User B tries to receive line 1
Expected: User B gets lock warning. Cannot double-receive.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-005: PO Close During Receive
Severity: HIGH Source: data-integrity.md
What Happens: User is receiving. Someone closes the PO in another session.
Test Steps:
- User A starts receiving PO-001
- User B closes PO-001
- User A tries to continue
Expected: User A gets warning. Partial work is saved.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-006: Rapid Label Print
Severity: HIGH Source: technical-questions.md
What Happens: User presses F6 multiple times quickly. May print duplicate labels.
Test Steps:
- Complete a receive
- Press F6 three times fast
- Count labels printed
Expected: Only one label per LP. Duplicates prevented.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
3. State Machine Edge Cases
EC-007: PO Status Transitions
Severity: HIGH Source: business-rules.md
What Happens: PO moves through states: Open → Partial → Complete → Closed. Invalid transitions should be blocked.
Test Steps:
- Try to reopen a Closed PO
- Try to receive against Closed PO
- Try to skip from Open to Closed
Expected: Invalid transitions rejected.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-008: LP Status After Putaway
Severity: HIGH Source: data-integrity.md
What Happens: LP status changes when put away. Should not allow receiving on LP after putaway starts.
Test Steps:
- Receive items to LP
- Start putaway
- Try to add more items to same LP
Expected: System blocks adding to in-progress LP.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
4. Integration Failure Scenarios
EC-009: Printer Offline
Severity: HIGH Source: technical-questions.md
What Happens: User completes receive but printer is offline.
Test Steps:
- Turn off label printer
- Complete a receive
- Press F6 to print
Expected: Error message. User can retry. Receive is not lost.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-010: Scanner Disconnect
Severity: MEDIUM Source: technical-questions.md
What Happens: Scanner disconnects during barcode entry.
Test Steps:
- Start UCI receive
- Unplug scanner
- Check screen state
Expected: User can reconnect or type manual. No data loss.
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
5. Boundary Conditions
EC-011: Maximum Quantity
Severity: MEDIUM Source: business-rules.md
What Happens: User enters very large quantity. System must handle.
Test Values:
| Value | Expected |
|---|---|
| 0 | Rejected |
| 1 | Accepted |
| 999,999 | Accepted |
| 1,000,000+ | May reject or truncate |
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
EC-012: Date Boundary
Severity: MEDIUM Source: business-rules.md
What Happens: User enters date exactly on boundary (e.g., exactly 90 days out).
Test Steps:
- Set customer rule to 90 days
- Enter date exactly 90 days out
- Check if warning or accept
Expected: Exactly 90 = Accept (green). 89 = Warning (yellow).
| Tester | Date | Pass/Fail | Notes |
|---|---|---|---|
6. Recovery Procedures
General Recovery
If something goes wrong:
- Press F3 to exit
- Do not turn off terminal
- Call IT Help Desk
- Note what you were doing
Emergency Contacts
| Issue | Contact | Phone |
|---|---|---|
| System down | IT Help Desk | ext. 4357 |
| Data problem | Receiving Manager | ext. 2100 |
| PO issue | Purchasing | ext. 3200 |
Test Execution Summary
| Category | Total | Pass | Fail | Block |
|---|---|---|---|---|
| Write Sequences | 3 | |||
| Race Conditions | 3 | |||
| State Machine | 2 | |||
| Integration | 2 | |||
| Boundaries | 2 | |||
| Total | 12 |
Sign-Off
| Role | Name | Date |
|---|---|---|
| QA Lead | ||
| Tech Lead |
Generated by generate-customer-docs skill v1.0.0