Перейти к основному содержимому

Установка и настройка

Системные требования

Чтобы начать работу с Testplane, установите Node.js версии 18.0 и выше.

Установка

Для запуска установщика Testplane с помощью npm выполните следующую команду:

npm init testplane@latest YOUR_PROJECT_PATH

Чтобы настроить проект в интерактивном режиме с дополнительными параметрами (выбор пакетного менеджера, установка плагинов), укажите опцию -v.

После выполнения команды установки в директории проекта появится следующий набор файлов и папок:

node_modules
testplane-tests
example.testplane.ts
ts.config.json
package-lock.json
package.json
testplane.config.ts

Настройка

В файле testplane.config.ts содержится базовый набор настроек для запуска тестов:

testplane.config.ts
import { setupBrowser } from "@testplane/testing-library";
import type { WdioBrowser } from "testplane";

export default {
gridUrl: "local",
baseUrl: "http://localhost",
pageLoadTimeout: 20000,
httpTimeout: 20000,
testTimeout: 90000,
resetCursor: false,
sets: {
desktop: {
files: ["testplane-tests/**/*.testplane.(t|j)s"],
browsers: ["chrome", "firefox"],
},
},
browsers: {
chrome: {
headless: true,
desiredCapabilities: {
browserName: "chrome",
},
},
firefox: {
headless: true,
desiredCapabilities: {
browserName: "firefox",
},
},
},
prepareBrowser: (browser: WdioBrowser) => {
setupBrowser(browser);
},
plugins: {
"html-reporter/testplane": {
enabled: true,
path: "testplane-report",
defaultView: "all",
diffMode: "3-up-scaled",
},
},
} satisfies import("testplane").ConfigInput;

Основные параметры конфигурации

  • gridUrl — где запускать браузеры: "local" для локального запуска или URL для Selenium Grid или облака (например, BrowserStack, Sauce Labs).
  • sets — группы тестов для разных браузеров (например, набор тестов для десктопных Chrome или Firefox и набор для мобильного Safari). Подробнее: Справочник по sets.
  • testTimeout — максимальное время выполнения теста в миллисекундах, после превышения тест прерывается.
  • pageLoadTimeout — максимальное время ожидания загрузки страницы.
  • browsers — конфигурация браузеров; headless: true — запуск без UI. Подробнее: Браузеры.
  • prepareBrowser — хук перед тестами; в конфиге выше вызывает setupBrowser(browser) и добавляет методы Testing Library.
  • plugins — плагины; в конфиге выше html-reporter для интерактивных отчетов (скриншоты, логи, отладка). Подробнее: HTML Reporter.

Полный список параметров конфигурации ищите в справочнике по конфигурации.

Чтобы загрузить браузеры, описанные в конфиге, отдельно от запуска самого Testplane, выполните команду:

npx testplane install-deps

Без предварительного запуска команды недостающие браузеры будут автоматически загружены с первым запуском Testplane.

Первый запуск

После установки и настройки запустите тестовый пример, который был создан автоматически:

npx testplane

Что происходит при первом запуске

Testplane автоматически выполнит следующие действия:

  1. Загрузит браузеры: если вы не запускали install-deps, Testplane скачает Chrome и Firefox
  2. Запустит тест: выполнит пример из testplane-tests/example.testplane.ts
  3. Создаст отчет: сгенерирует HTML-репорт в папке testplane-report/

Просмотр результатов

После завершения тестов откройте интерактивный отчет:

npx testplane gui

Команда запустит локальный сервер и откроет отчет в браузере. В интерфейсе вы увидите:

  • Список пройденных тестов
  • Статистику выполнения
  • Скриншоты (если тест использует assertView)
  • Логи выполнения

Ожидаемый результат

Если все настроено корректно, вы увидите:

✔ test examples › docs search test [chrome] - 3.2s
✔ test examples › docs search test [firefox] - 3.5s

Total: 2 Passed: 2 Failed: 0 Skipped: 0 Retries: 0

Для успешного прохождения тестам нужен доступ к testplane.io.

Что дальше?

Теперь, когда Testplane настроен и работает, вы можете: