Установка и настройка
Системные требования
Чтобы начать работу с 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 содержится базовый набор настроек для запуска тестов:
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 автоматически выполнит следующие действия:
- Загрузит браузеры: если вы не запускали
install-deps, Testplane скачает Chrome и Firefox - Запустит тест: выполнит пример из
testplane-tests/example.testplane.ts - Создаст отчет: сгенерирует 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 настроен и работает, вы можете:
- Написать свои тесты: структура тестов, селекторы и основные команды
- Запустить и отладить тесты: фильтрация, GUI-режим, отладка
- Настроить CI/CD: автозапуск тестов в GitHub Actions