Vision SDKРанний доступ

Ваши тесты Playwright проверяет Delta-QA. Одна строка на каждую проверяемую страницу.

@delta-qa/vision отправляет в Delta-QA каждую страницу, которую проверяют ваши тесты Playwright. Delta-QA сравнивает её с эталоном по элементам и показывает, какой элемент изменился. Регрессионные тесты, написанные в коде, и сценарии, записанные без кода, живут в одном рабочем пространстве: те же эталоны, та же проверка, тот же отчёт.

Vision SDK сначала доступен в раннем доступе: свяжитесь с нами, чтобы использовать его в своих тестах Playwright.

Три шага в ваших тестах

  1. Создайте API-ключ в рабочем пространстве Delta-QA и сохраните его в секрете вашего CI. SDK читает его из DELTAQA_API_KEY; рабочее пространство — то, которому принадлежит ключ.
  2. Добавьте проверку там, где тест должен проверить страницу: vision.check("Оплата"). По её имени она сопоставляется со своим эталоном.
  3. Сделайте push. При первом запуске каждый тест «Новый»: его первый снимок становится эталоном. При втором, если сайт не изменился, различий не будет.
import { test } from "@playwright/test";
import { Vision } from "@delta-qa/vision";

const vision = new Vision(); // reads DELTAQA_API_KEY

test("Checkout", async ({ page }) => {
  await vision.open(page, { id: "checkout", name: "Checkout" });
  await page.goto("https://shop.example.com/checkout");
  await vision.check("Payment");
  await vision.close(); // fails the test on an unreviewed difference
});

SDK предлагает только настройки, которые Delta-QA применяет: ни одна не принимается без эффекта. Тег и эталонный тег необязательны; без них SDK определяет их сам.

Сравнение по элементам, а не по пикселям

Для каждой проверки SDK отправляет страницу (её HTML, viewport) и ресурсы, загруженные браузером. Delta-QA заново открывает страницу и сравнивает её элементы с эталонными, как шаг сценария: отчёт называет элемент, который изменился — кнопку «Оплатить», была синей, стала зелёной, — а не область пикселей.

Непроверенное различие роняет тест Playwright, а лог CI содержит ссылку на пакет запусков. Вы открываете шаг, читаете отчёт и решаете: «Ожидаемо» или «Bug».

Каждый ресурс опознаётся по хешу: ресурс, который уже есть в вашем рабочем пространстве, повторно не отправляется. При втором запуске набора тестов, если сайт не менялся, уходят только HTML и хеши.

Один эталон на ветку, без автоматического слияния

  • Тег определяется сам по вашей git-ветке или CI, а эталонный тег — по целевой ветке PR, иначе это main. Новая ветка сравнивается с main уже с первого запуска, и пакет показывает «сравнено с main».
  • «Ожидаемо» действует на отмеченные вами теги, по умолчанию «только этот тег»: другие ветки не видят изменений.
  • История теста фильтруется по окружению и по тегу; любой скан можно назначить эталоном для отмеченных вами тегов.
  • Тесты одного запуска CI образуют пакет, общий для параллельно работающих машин; список пакетов читается как ваш CI.

Создавайте сценарии с ИИ-агентом: MCP-сервер

Вопросы о Vision SDK

Какие фреймворки поддерживает Vision SDK?
Playwright на TypeScript и JavaScript в Chromium. Cypress, WebdriverIO, Firefox и WebKit появятся позже. Ваши сценарии, записанные без кода, проверяются в том же рабочем пространстве Delta-QA.
Нужно ли переписывать мои тесты Playwright?
Нет: вы добавляете проверку там, где нужно проверить страницу, остальная часть теста не меняется. Имя проверки сопоставляет её с эталоном: две проверки с одинаковым именем в одном тесте прерывают запуск с указанием дубликата.
Какие данные отправляет SDK?
Тестируемую страницу (HTML, viewport) и ресурсы, загруженные браузером, кроме видео и аудио. Они используются только для сравнения и остаются в вашем рабочем пространстве. Не тестируйте на персональных данных production: этот выбор за вами.
Изменятся ли мои сценарии без кода?
Нет: запись, воспроизведение и отчёт остаются прежними. Теперь сценарий можно запускать под тегом, а «Ожидаемо» действует на отмеченные вами теги.
Можно ли использовать его из другого языка?
SDK будет на TypeScript и JavaScript. Другой язык добавим, если пользователи об этом попросят.

Пусть Delta-QA проверяет ваши тесты Playwright

Чтобы использовать Vision, свяжитесь с нами: сначала он доступен в раннем доступе. Расскажите, какие тесты вы хотите проверять, и мы откроем вам доступ.