Using Eyes with GitHub

Introduction

The Eyes GitHub integration allows you to benefit from Eyes visual testing using a branch and merge workflow on projects using GitHub.

Eyes supports multiple branches, each of which can consist of multiple test baselines Defines the sequence of images to which the sequence of images captured at checkpoints will be compared. A test can have multiple baselines, each of which is characterized by the execution environment it ran on (operating system, browser and viewport size). A baseline can have instances in multiple branches.. You can create a new branch based on an existing branch, make independent updates to the baselines in each branch, compare branches to detect conflicts, and merge baselines in branches.

GitHub integrates with Eyes in the following aspects:

  • Eyes tests are automatically configured to use and save baselines in branches with names derived from the Git branch names.
  • All Eyes tests that are in a specific CI build are automatically batched together, with a batch name that includes the Git commit information.
  • The GitHub Pull Request panel includes a status indicating the latest Eyes test results and merge status.
  • The GitHub Commits panel includes a status indicating the visual UI test result.
  • When you execute a commit that triggers CI, the Applitools test status is updated to reflect the result of the test.

To setup GitHub integration, see Enabling Eyes/GitHub integration.

For information about using this integration in your daily development, see Working with GitHub.

Getting started

This article focuses on the Eyes GitHub integration and assumes that you are already familiar with GitHub and a CI system that is integrated with GitHub.

Integration options

The Eyes/GitHub integration is based on GitHub's recommended 3rd party GitHub App approach. The integration installation procedure depends on the type of the GitHub service:

GitHub App based installed via the Test manager For customers that use the GitHub cloud. See Enabling Eyes/GitHub integration
GitHub proxy service and GitHub App For customers that use a self hosted GitHub system. See Using the Applitools GitHub proxy service.

If you are currently integrated with the Legacy GitHub OAuth based solution and want to continue using it instead of changing to the GitApp based integration, see Configuring direct Eyes/GitHub integration.