Установка и настройка
Системные требования
Чтобы начать работу с 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 содержится базовый набор настроек для запуска тестов:
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запускает браузер в фоновом режиме без графического интерфейса. Подробнее в разделе Браузеры.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
Возможные проблем ы
Если тест не прошел, проверьте:
- Интернет-соединение (тест обращается к https://testplane.io/)
- Браузеры установлены:
npx testplane install-deps
Подробнее об отладке в разделе Запуск и отладка.
Что дальше?
Теперь, когда Testplane настроен и работает, вы можете:
- Написать свои тесты: структура тестов, селекторы и основные команды
- Запустить и отладить тесты: фильтрация, GUI-режим, отладка
- Настроить CI/CD: автозапуск тестов в GitHub Actions