testRTC’s testing and monitoring capabilities are built for the new generation of WebRTC-based communications applications. testRTC enables you to improve the user experience of your service pre-launch as well as in production.
For testing and monitoring, testRTC simulates real web browsers interacting with your service directly. This use of real browser simulation ensures that your service gets tested in the environment in which your users rely on, using the same medium your users use (the web browser with its WebRTC implementation).
The testing solution is composed of two main components:
- testRTC Server
- testRTC Probe (also known as testRTC Agent)
The testRTC server is the component that users interact with directly. It is composed of the following components:
- Management portal – The management portal is the frontend interface that enables users to create tests, execute them and view the tests’ execution reports
- Reporting – The reporting component is responsible for generating different reports, based on users’ requests
- Data Analysis – The data analysis component collects data from testRTC agents and analyzes the results, in order to obtain valuable information about the tested system
- Tests and Monitors Execution Manager – the Tests and Monitors Execution Manager orchestrates the execution of tests and monitors, taking care of the test from beginning to end. The Tests and Monitors Execution Manager manages all testRTC agent machines and decides where to start every test session
testRTC Probe (Agent)
The testRTC testing probe is responsible for a single test session execution. The probe is based on Docker container technology. The testRTC probe maps into a single web browser (=user) that is interacting with your WebRTC-based service. The probe is composed of the following components:
- Web Flow Generator – In order to simulate a real user behavior, the testRTC probe simulates a web browsing flow that is defined as a Nightwatch/Selenium test case. The Web Flow Generator receives execution commands from the Tests Execution Manager
- Media Streamer – The Media Streamer is responsible for injecting media content to the web browser as if they were injected from the computer’s microphone and/or camera
- Browsers and WebRTC – a standard installation of a specific browser type and version. Multiple browser versions can be tested simultaneously in a single test case
- Collector Agent – The Collector Agent sends the executed test results and information to the testRTC server