Test Plan

Our project is based on the web interactions between learning assistants and the administrator. a  We would like to test thoroughly as both user groups to ensure the interface works as intended. 

 The major use of our tool is to be able to add new shifts and change them when required. We want to make sure that the user interface allows the user to make changes according to the permission provided. Since the major part of the project was around replacing the unsupported libraries and changing the findOne function from typeORM, we want to make sure any bugs related to these changes are resolved.

Integration and System Testing

Backend testing:

  • Validate the functionality of replaced libraries and the modfied ‘findOne’ function.
  • Check for any bugs associated with these changes and ensure they are resolved.

User interface:

  • Conduct manual tests to ensure the user interface functions correctly.
  • Verify that the interface allows users to add new shifts and modift them based on permissions.
  • Test the responsiveness of the interface on different browers.

Description of tools

  • Most of our testing will be manual to ensure the interface works as intended.
  • Some mock data is provided by the client to ensure the interface shows the correct schedules and enables us to make changes as needed. 

End users

We have two groups of end users: Administrator and Learning Assistants from COMP 110. We want to ensure both the groups are able to view the interface and perform necessary changes as needed.  

  • Administrator:
    • Ensure the administrator can efficiently manage schedules.
    • Verify that the interface facilitates easy modification of shifts based on permissions.
    • Check for any issues in the administrator’s workflow.
  • Learning Assistants (LAs) from COMP 110:
    • Confirm LAs can easily view schedules.
    • Validate that the interface enables LAs to request changes seamlessly.
    • Identify and address any challenges faced by LAs in using the system.

Cloud Deployment Testing:

  • Deployment Environment:
    • Deploy the application on the Carolina Cloud Platform.
    • Verify that the deployment is successful without errors.
  • Scalability:
    • Simulate varying loads to assess the application’s scalability based on number of schedules.
    • Evaluate how well the application handles increased number of Learning Assistants accounts.
  • Security:
    • Perform security testing to ensure data integrity during the transfer to and from the cloud and client’s employee database.
    • Check for vulnerabilities in the cloud environment.

Multiple Logins and User Permissions:

  • User Authentication:
    • Test the login functionality for both administrators and learning assistants.
    • Verify that authentication mechanisms are secure and robust.
  • Multiple Concurrent Sessions:
    • Simulate scenarios with multiple administrators and learning assistants accessing the system simultaneously.
    • Ensure the application can handle concurrent sessions without conflicts.
  • Permissions Testing:
    • Verify that user permissions are enforced correctly.
    • Test scenarios where users attempt actions beyond their assigned permissions.

Scheduling Pages:

  • Page Navigation:
    • Validate that users can easily navigate between scheduling pages.
    • Check for any navigation-related issues or inconsistencies.
  • Data Consistency:
    • Verify that changes made on one scheduling page are reflected accurately on related pages.
    • Test the synchronization of data across different views.
  • Error Handling:
    • Test error scenarios, such as attempting to schedule overlapping shifts.
    • Ensure informative error messages are displayed to users.

Acceptance Testing:

  • Schedule a meeting with the client towards the end of the semester.
  • Present the user interface and demonstrate user permissions.
  • Review the initial expectations set by the client to ensure they are met.
  • Collect feedback and address any concerns or additional requirements from the client.