Skip to content

pandeyaman2170/Software_testing_Project_backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telehealth Application Testing Report

Overview

This is a comprehensive telehealth application designed to facilitate medical consultations, patient management, and healthcare service delivery.

🚀 High-Level Functionality

  • Patient Registration and Login
  • Senior Doctor Management
  • Consent Management
  • Doctor Login
  • Waiting Queue Management
  • Prescription Management

👥 User Roles

🧑‍🤝‍🧑 Patients

  • Create account and login
  • Add previous health records
  • Join waiting queue
  • Participate in video/phone consultations
  • View prescriptions
  • Provide consent

👨‍⚕️ Doctors

  • Login to application
  • Set online/offline status
  • View scheduled follow-up appointments
  • Join video/phone consultations
  • Schedule follow-up appointments
  • Add health records
  • Issue prescriptions

👑 Admin

  • Login to system
  • Manage hospitals (add/remove)
  • Manage doctors (add/remove)
  • View patient history
  • View doctor consultation statistics

🧪 Testing Strategy

🔍 Testing Approach

  • Unit Testing:

    • Focused on individual method validation
    • Used JUnit for business logic verification
  • Integration Testing:

    • Tested service implementation interactions
    • Verified component integration
  • Mocking:

    • Utilized Mockito to isolate dependencies
    • Simulated external service behaviors

🛠 Tools Used

  • JUnit
  • Mockito
  • Spring Boot Test Framework

📊 Key Metrics

  • Code Coverage: Over 85%
  • Defect Rate: Zero critical defects
  • Test Cases: 100+ unit and integration tests

📂 Tested Service Implementations

  1. ConsultationService
  2. DepartmentService
  3. DoctorService
  4. GlobalAdminService
  5. HospitalService
  6. PatientService
  7. PdfService
  8. PrescriptionService
  9. QueueService
  10. ShareRecordService
  11. StorageService

🔐 Security and Validation

Each service underwent rigorous testing for:

  • Input parameter validation
  • Error handling
  • Business logic enforcement
  • Secure data management

🌉 System Architecture

Activity Transition Graphs (ATG)

stateDiagram-v2
    [*] --> Authentication: User Login
    
    Authentication --> GlobalAdminPortal: Global Admin Login
    Authentication --> HospitalAdminPortal: Hospital Admin Login
    Authentication --> DoctorPortal: Doctor Login
    Authentication --> PatientPortal: Patient Login/Register

    state GlobalAdminPortal {
        [*] --> ManageHospitals
        ManageHospitals --> ViewHospitals
        ManageHospitals --> AddHospital
        ManageHospitals --> UpdateHospital
        ManageHospitals --> DeleteHospital
        state ViewAnalytics {
            TotalHospitals
            TotalDoctors
            TotalPatients
        }
    }

    state HospitalAdminPortal {
        [*] --> ManageDepartments
        [*] --> ManageDoctors
        ManageDepartments --> AddDepartment
        ManageDepartments --> ViewDepartments
        ManageDoctors --> AddDoctor
        ManageDoctors --> ViewDoctors
        state ViewHospitalStats {
            ConsultationList
            DepartmentList
            DoctorList
        }
    }

    state DoctorPortal {
        [*] --> OnlineStatus
        OnlineStatus --> Online: Set Online
        OnlineStatus --> Offline: Set Offline
        Online --> ConsultationMode
        state ConsultationMode {
            WaitingForPatient
            InConsultation
            WritePrescription
        }
        ConsultationMode --> ViewDailyLog
        ConsultationMode --> GeneratePDF
    }

    state PatientPortal {
        [*] --> UpdateProfile
        [*] --> JoinQueue
        JoinQueue --> WaitingInQueue: Department Selection
        WaitingInQueue --> InConsultation: Doctor Accepts
        InConsultation --> ConsultationEnd: Doctor Generates Prescription
        ConsultationEnd --> ViewPrescriptions
        ConsultationEnd --> DownloadPDF
        state ViewRecords {
            PrescriptionHistory
            FollowupDetails
            SharedRecords
        }
    }

    state ConsultationProcess {
        WaitingInQueue --> PatientCalled: Doctor Available
        PatientCalled --> ConsultationStarted: Accept Call
        ConsultationStarted --> PrescriptionGenerated: End Consultation
        PrescriptionGenerated --> ConsultationClosed: Patient Confirms
    }
Loading

Data Flow Model

  • Secure transmission between patients, doctors, and admin
  • Encrypted record sharing
  • Controlled access permissions

🔬 Testing Methodology

Comprehensive Test Coverage

  • Validation of core functionalities
  • Mocking of external dependencies
  • Isolation of service logic
  • Thorough exception handling tests

🚧 Future Improvements

  • Enhance test coverage
  • Implement more advanced mocking scenarios
  • Continuous integration of new features

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages