Skip to main content

System Overview

Major Components

The system consists of the following major components:

  • Application Under Test (AUT) – The application being tested.
  • Test suite – Exercises the AUT and verifies its correctness.
  • Eyes SDK – Integrated into the test suite code to trigger screenshot capture and visual checking.
  • Application driver – Such as Selenium or Appium, allowing the test suite to send events to the AUT. The Eyes SDK also uses the driver to capture screenshots.
  • Eyes Server – Receives and stores the AUT screenshots from the SDK, compares them to stored baseline images, and reports differences.
  • Eyes Test Manager – Allows users to review test results, report bugs, and manage baseline images.

Test Execution Flow

The diagram below explains how these components interact to run a test and allow testers to view and manage results.

Overview

The numbers below correspond to the labeled arrows in the diagram.

#Step Description
1Testers run the test suite, repeating steps for multiple application states.
2.1Simulate user actions (e.g., mouse clicks, keyboard entries) using a driver such as Selenium or Appium.
2.2Call an Eyes SDK API to perform a visual checkpoint.
2.2aEyes SDK uses the driver to capture a screenshot.
2.2bEyes SDK sends the image to the Eyes Server, where it and other checkpoint images are compared to previously stored baseline images.
3Once processing is complete, the Eyes Server responds with details on differences found and provides a link to the Eyes site to review results.
4Testers use the Eyes Test Manager to view test results, update baselines, mark bugs, and annotate special-handling regions. Once results are reviewed, testers save the updated baseline for future test runs.

Eyes SDK & Server Configurations

Applitools provides SDKs supporting various web, mobile, and desktop automation frameworks across multiple application drivers, programming languages, platforms, browsers, and operating systems. These SDKs operate independently of the AUT, ensuring that Eyes is agnostic to implementation and deployment details.

Eyes services are available in different server configurations to meet organizational needs, including multi-tenant public cloud, dedicated cloud, and on-premises deployments. The SDK/Server architecture ensures application and test suite code remain independent and isolated from the Eyes Server. For example, an application can be behind a firewall without requiring direct access to the Eyes Server for screenshots to be processed.