1Business context
SkyTel is a prepaid mobile recharge and self-care portal. The business goal is fast, reliable recharges: detect the operator from the number, show relevant plans, apply cashback promos and confirm success from the operator asynchronously.
Enter a number for async operator detection, browse plan tabs, compare up to 3 plans, apply a cashback promo, pay and watch the recharge status settle.
2Users & roles
- 👤 Prepaid customer — recharges a number, checks usage, raises complaints
3Modules & screens
| Screen | Route | What it does |
|---|---|---|
| Recharge | /apps/telecom | Number entry with async operator detection, plan tabs, compare (max 3) |
| Checkout | /apps/telecom/checkout | Promo code and payment method (UPI, card, wallet) |
| Recharge status | /apps/telecom/status | Pending with operator → Successful, with reference |
| My account | /apps/telecom/usage | Usage meters, add-on switches and complaint form |
4Main end-to-end journey
Recharge with cashback
- Open /apps/telecom and enter 9876543210
- Wait for SkyTel Prepaid detection
- Pick the ₹399 Unlimited plan
- At checkout apply SKY20
- Pay by UPI amir@okbank
Expected: Status moves from Pending with operator to Successful, with ₹50.00 cashback shown
5Business rules & validations
- Operator detectionBeginner
After 10 digits a spinner runs ~0.8s, then detected-operator shows the circle. 6xxxxxxxxx is rejected.
- Plan tabs & filterBeginner
Switch plan-tab-*, apply validity-filter and assert the plan-card count.
- Compare limitIntermediate
Tick 4 compare-* boxes: the 4th shows compare-error; compare-button opens compare-table.
- Promo codeIntermediate
SKY20 shows cashback in promo-message and summary-cashback; other codes are rejected.
- Payment method validationIntermediate
Pay with no method, a bad UPI ID or an empty wallet to see each error-*.
- Async statusAdvanced
recharge-status starts as “Pending with operator” and becomes “Successful” ~2.5s later — wait for text, not time.
- Toggles & progress barsAdvanced
On My account, read aria-valuenow of usage-* bars and flip addon-* switches (role=switch).
- Complaint formIntermediate
A description under 20 chars fails; a valid one shows complaint-ticket with an SR number.
6Test data & credentials
- URL
- /apps/telecom
- Numbers
- 7/8/9xxxxxxxxx
- Other operator
- 6xxxxxxxxx
- Promo
- SKY20 (20% cashback)
7Glossary
- Operator detection
- After 10 digits a lookup identifies SkyTel; 6xxxxxxxxx numbers belong to another operator
- SKY20
- 20% cashback promo
- SR number
- Service request id for complaints
8Watch-outs for automation
- ⚠️Operator detection runs ~0.8 s after the 10th digit
- ⚠️Recharge status changes after ~2.5 s — wait for text, not time
- ⚠️Usage bars expose values via aria-valuenow
9Suggested test strategy
1 · Smoke
2
P1 positive and end-to-end cases — run on every build.
2 · Regression
16
All cases, incl. 5 negative and 3 edge — run before release.
3 · End-to-end
3
Full user journeys — run nightly.
Start with these smoke cases
- SKYTEL-01 — Recharge a prepaid number
- SKYTEL-E2E-01 — Recharge with cashback