Разработка плагинов
Плагины позволяют добавлять собственные UI-компоненты в интерфейс HTML Reporter. Например, вы можете показать статистику стабильности теста или добавить кнопку для интеграции с внешним сервисом. В HTML Reporter есть несколько точек расширения, в которых может отображаться UI плагина — например, на панели настроек или на странице результатов запуска теста.
Быстрый старт
Пример плагина, в котором настроена сборка и используются основные возможности плагинной системы, доступен в репозитории HTML Reporter.
Мы рекомендуем использовать этот пример как шаблон для своего плагина.
Как работают плагины
Плагины подключаются к HTML Reporter в конфиге, например:
export default {
plugins: {
"html-reporter/testplane": {
pluginsEnabled: true,
plugins: [
{
name: "my-plugin-package",
component: "MyPlugin",
point: "result_meta",
position: "after",
},
],
},
},
};
В этом случае HTML Reporter будет искать плагин в npm-пакете my-plugin-package, а именно:
- В
my-plugin-package/plugin.jsHTML Reporter будет искать реализацию компонентаMyPlugin, который будет отображаться в точке расширенияresult_meta - В
my-plugin-package/middleware.jsHTML Reporter будет искать реализацию серверных эндпоинтов
Поэтому типичный плагин состоит из трёх частей:
my-plugin/
├── ui/ # UI плагина — собирается в бандл plugin.js с помощью Vite
├── server/ # Серверная часть плагина (опционально) — входная точка ожидается в файле middleware.js
└── preset-for-config/ # Пресет для удобного подключения (опционально)