What is Team Testing?

As time goes by, the scale of software is increasing. With the expansion of software, the scale of testing also grows. Conversely, update cycles are getting shorter, reducing the time available for testing, necessitating more tests in less time.

Team Testing is a method that multiple individuals test a single piece of software. There are several issues with Team Testing. First, it’s challenging to share test environments and test cases with others. Second, users create duplicately testing resources like stubs, class codes, etc. Third, merging test results is difficult. Additionally, integrating and rerunning the entire test on one PC to verify the final results adds further complexities.

CT 2023.12 responds to these changes by offering Team Testing capabilities to conduct more tests in less time. Team Testing Server is the server created for CT 2023.12 to provide this feature. During a project, Team Testing Server syncs project configurations among users, enabling sharing of stubs and class codes. Furthermore, it merges test results each time a test is run, displaying them on a dashboard. Users can use the dashboard to monitor project progress at a glance.

In essence, CT 2023.12 is a client where each user conducts tests. Team Testing Server stores and manages projects for sharing among users. The dashboard is a web page presenting project information and progress stored in Team Testing Server.

Terminology

Below are the terms used in CT 2023.12’s team testing:

  • Team Project: A project exported to Team Testing Server for collaboration among different users.
  • Shared Resources:
    • Configurations that comprise a project, including project properties, preferences, source code, toolchains, as well as resources like stubs and class codes connected to testing.
    • Automatically shared among users.
  • Test Resources:
    • Resources necessary for testing, such as tests, test data, etc.
    • Not automatically shared among users; if sharing is needed, they must be imported from Team Testing Server.
  • Local: The CT (client) where the user works.
  • Team Testing Server: Where the work of all users is merged.
  • Commit: The action of reflecting changes made in local onto Team Testing Server.
  • Update: The action of importing changes made by other users to the local system.
  • Conflict: When updating resources modified and committed by other users, if there are also local changes, it’s referred to as a conflict.
  • Revision:
    • Modification record in Team Testing Server.
    • Increases when a user commits, changing the version of team project.
    • Starts at 1 upon project creation and increases by 1 with each commit.

Team Project Process

The team project can be broadly divided into 3 stages:

  1. Project Initialization
    • Creating the team project and modifying project configurations to suit the testing environment.
    • Each user imports the team project to their individual PC and collaborates on a shared project.
  1. Test Progression
    • Tests are carried out through commits and updates.
    • Users receive notifications if there are changes in shared resources, allowing them to update.
    • If changes in source code make the tests unusable, a re-analysis and test reconfiguration occur.
    • Resolving conflicts during the update process is necessary before proceeding with tests.
  1. Test Result Merge
    • Test results are merged in Team Testing Server and can be monitored in real-time on the dashboard.
    • If you need to run the entire test or output the report, import all the tests to one PC and output the report.

In addition, it provides On/Offline Mode feature in case the connection to Team Testing Server is unstable.

Need more help with this?
Don’t hesitate to contact us here.

Thanks for your feedback.