Test plansCross app
Test Plan: Cross-App Integration
Module: Cross-App Integration Status: 🔄 Pending
Overview
Cross-app integration testing validates the complete flow between Patient App and Clinic App.
Test Flow
Patient App Clinic App
│ │
│ 1. Search Doctor │
│──────────────────────────────────►│
│ │
│ 2. Get Time Slots │
│──────────────────────────────────►│
│ │
│ 3. Book Appointment │
│──────────────────────────────────►│
│ │
│◄──── 4. Appointment Created ────────│
│ │
│ 5. View Appointment │
│──────────────────────────────────►│
│ │
│ 6. Clinic Updates Status │
│◄──────────────────────────────────│
│ │
│ 7. Patient Sees Update │
│──────────────────────────────────►│Test Cases
End-to-End Booking Flow
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-01 | Patient searches doctor | P0 | Search by name/specialty | Doctor appears | Pending |
| INT-02 | Patient views doctor profile | P0 | Click doctor | Profile with facilities | Pending |
| INT-03 | Patient gets time slots | P0 | Select date | Available slots shown | Pending |
| INT-04 | Patient books appointment | P0 | Select slot → OTP → Confirm | Appointment created | Pending |
| INT-05 | Clinic sees appointment | P0 | Go to queue | New appointment shown | Pending |
| INT-06 | Clinic starts encounter | P0 | Click Start | Encounter started | Pending |
| INT-07 | Clinic completes appointment | P0 | Mark complete | Status updated | Pending |
| INT-08 | Patient sees status update | P0 | View appointments | Status shows "Completed" | Pending |
Unauthenticated Booking Flow
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-09 | Send OTP for booking | P0 | Enter phone → Send | OTP sent | Pending |
| INT-10 | Verify OTP | P0 | Enter correct OTP | Verified | Pending |
| INT-11 | Complete booking | P0 | Fill details → Submit | Appointment created | Pending |
| INT-12 | Receive confirmation | P0 | After booking | Confirmation shown | Pending |
Authenticated Booking Flow
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-13 | Login as patient | P0 | Enter credentials | Logged in | Pending |
| INT-14 | Book appointment | P0 | Select slot → Confirm | Appointment created | Pending |
| INT-15 | First-time consent | P0 | First clinic visit | Consent prompt | Pending |
| INT-16 | Return visit | P1 | Visit same clinic | No consent prompt | Pending |
Appointment Management
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-17 | Patient cancels | P0 | Cancel appointment | Status = Cancelled | Pending |
| INT-18 | Clinic marks no-show | P0 | Mark as no-show | Status = No-show | Pending |
| INT-19 | Patient reschedules | P1 | Select new slot | New time booked | Pending |
Data Synchronization
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-20 | Patient created in clinic | P0 | Patient books first time | Patient record created | Pending |
| INT-21 | Patient history | P0 | View patient | Shows all visits | Pending |
| INT-22 | Real-time updates | P1 | Change status | Reflects immediately | Pending |
Edge Cases
| # | Test Case | Priority | Steps | Expected | Status |
|---|---|---|---|---|---|
| INT-23 | Slot booked by another | P0 | Select slot → Book | Error: "Slot taken" | Pending |
| INT-24 | Doctor unavailable | P1 | Doctor deactivates | Error shown | Pending |
| INT-25 | Cross-clinic booking | P1 | Book with Doctor A at Clinic B | Correct clinic | Pending |
API Integration Points
Patient → Clinic
| API | Direction | Purpose |
|---|---|---|
/identity/practitioners/search | Patient → Backend | Search doctors |
/patient/public_appointments/time_slots | Patient → Backend | Get slots |
/patient/public_appointments/send_code | Patient → Backend | OTP verification |
/patient/public_appointments/{id} | Patient → Backend | Create appointment |
Clinic → Patient
| API | Direction | Purpose |
|---|---|---|
/clinical/appointments | Clinic → Backend | View/manage appointments |
/clinical/appointments/{id} | Clinic → Backend | Update appointment |
/clinical/facilities/{id}/queue | Clinic → Backend | Queue management |
Test Data Requirements
| Type | Data | Purpose |
|---|---|---|
| Patient A | Patient app account | Authenticated booking |
| Patient B | New (via OTP) | Unauthenticated booking |
| Doctor A | Clinic app, active | Complete flow |
| Doctor B | No availability | Error scenario |
| Appointment | Booked, pending | Status update testing |
Test Execution Checklist
Pre-Flight
- Test accounts ready (Patient A, Patient B, Doctor A)
- Doctor A has availability set
- Staging environment accessible
- API tools ready
End-to-End Flow
- INT-01 to INT-08
Unauthenticated Flow
- INT-09 to INT-12
Authenticated Flow
- INT-13 to INT-16
Appointment Management
- INT-17 to INT-19
Data Synchronization
- INT-20 to INT-22
Edge Cases
- INT-23 to INT-25
Test Plan Status: 🔄 Pending Total Test Cases: 25