Syngrisi Core API - Visual Regression Testing
Overview
Syngrisi Core API (@syngrisi/core-api
) provides an interface to communicate with the Syngrisi visual regression
testing service. This service allows clients to start and stop sessions, create checks, and get snapshots and baselines.
This is the common JS/TS library, if you use WebdriverIO as automation framework try to use wdio-syngrisi-cucumber-service or @syngrisi/syngrisi-wdio-sdk, if Playwright try to
use @syngrisi/playwright-sdk. For detailed documentation on the API methods
and their parameters, refer to Syngrisi Core API Documentation.
Syngrisi Core API (@syngrisi/core-api
) provides a way to interact with the Syngrisi visual regression testing service. This service lets you start and stop testing sessions, set up test checks, and retrieve snapshots and baseline images. This is a common JavaScript/TypeScript library. If your automation framework is WebdriverIO, consider using wdio-syngrisi-cucumber-service or @syngrisi/syngrisi-wdio-sdk. If you are using Playwright, the @syngrisi/playwright-sdk is recommended. For a comprehensive guide on how to use the API's functions and parameters, please check out the Syngrisi Core API Documentation.
Installation
Install the package with npm:
npm install @syngrisi/core-api
Basic Workflow
1. Start Session
To begin visual regression testing, start a session with the Syngrisi service:
import { SyngrisiApi } from '@syngrisi/core-api';
const apiClient = new SyngrisiApi({
url: 'http://<your-domain>/',
apiKey: 'your-api-key'
});
const sessionResponse = await apiClient.startSession({
run: 'run-id',
suite: 'suite-name',
runident: 'run-identifier',
name: 'test-name',
viewport: '1200x800',
browser: 'chrome',
browserVersion: '113',
os: 'macOS',
app: 'MyProject'
});
2. Create Check
Once the session is started, you can perform a visual check:
const checkResponse = await apiClient.coreCheck(imageBuffer, {
name: 'homepage',
viewport: '1200x800',
browserName: 'chrome',
os: 'macOS',
app: 'MyProject',
branch: 'main',
testId: sessionResponse.testId
});
3. Stop Session
After checks are completed, stop the session:
const stopResponse = await apiClient.stopSession(sessionResponse.testId);
Environment variables
SYNGRISI_LOG_LEVEL
- logging level ("trace" | "debug" | "info" | "warn" | "error"
)
License
This project is licensed under the MIT License - see the LICENSE.md file for details.