Back to Kibana

Testing Kibana plugins [testing-kibana-plugins]

docs/extend/testing/index.md

9.5.02.5 KB
Original Source

Testing Kibana plugins [testing-kibana-plugins]

Kibana plugins are tested at three levels. Each level has a different scope, speed, and tooling:

LevelScopeToolsWhen to use
UnitA single function, class, or component in isolationJest + mocksFast, exhaustive coverage of logic and edge cases
IntegrationInteractions between systems (HTTP APIs, Elasticsearch, plugin contracts)Jest + TestUtils or FTRVerifying real behavior without full browser
End-to-end (E2E)User-facing behavior through the browser or HTTPScout (Playwright)Validating complete user flows and UI interactions

Follow the testing pyramid: many unit tests, fewer integration tests, and a small number of E2E tests.

Unit and integration tests

Use Jest for unit and integration tests:

End-to-end tests with Scout

Scout is Kibana's modern E2E test framework built on Playwright. Use it for UI and API tests.

Core concepts:

How-to guides:

Legacy functional tests (FTR)

The Functional Test Runner (FTR) is Kibana's legacy E2E framework. Existing FTR tests continue to run, and teams can migrate incrementally to Scout.

External plugins

If you're testing a plugin developed outside the Kibana repository, see Testing Kibana plugins in the Tutorials section.