Scout
Scout is Kibana’s modern UI and API test framework built on Playwright. It focuses on fast test execution, a good developer experience, and reusable test building blocks (e.g., fixtures, page objects and API services).
- Parallel execution: run UI suites in parallel against the same deployment.
- Co-located tests: keep tests close to plugin code for easier iteration and maintenance.
- Deployment-agnostic: write tests once, then use tags to declare where they should run (stateful/serverless).
- Fixture-based: fixtures cover auth, data setup, clients, and common workflows.
- Better debugging: use Playwright UI Mode.
- Reporting: we capture test events that power our dashboards (for example, skipped tests, flaky tests, and more).
- Reusability: reuse or write reusable fixtures, page objects and API helpers to reduce duplication.
- Follows modern best practices: check out our Scout best practices.
Import the right Scout package in your Scout tests:
- Platform-owned tests →
@kbn/scout
| Package | Use in tests |
|---|---|
@kbn/scout |
Platform (shared baseline) |
- Solution-owned tests → your solution Scout package (it builds on
@kbn/scout)
| Package | Use in tests |
|---|---|
@kbn/scout-oblt |
Observability solution |
@kbn/scout-security |
Security solution |
@kbn/scout-search |
Search solution |
Fixtures, page objects, and API helpers defined in @kbn/scout can be imported by solution-specific Scout packages. When they are defined in a solution package or a plugin they will only be available to that solution or plugin.
We welcome contributions to one of the Scout packages.
| If your helper/code… | Put it… | Examples |
|---|---|---|
| Is reusable across many plugins/teams | In @kbn/scout |
Generic fixtures, page objects, and API helpers |
| Is reusable but scoped to a solution | In the solution Scout package (for example @kbn/scout-security, @kbn/scout-oblt, @kbn/scout-search) |
Solution workflows and domain-specific helpers |
| Is specific to one plugin or package | In your plugin or package’s test/scout directory |
Components specific to your plugin or package only |
Internal (Elasticians): reach out to the AppEx QA team in the
#kibana-scoutSlack channel for guidance.External contributors: open an issue in the Kibana repository and label it with
Team:QA.
No—good test design still matters.
No. Scout supports both UI and API testing with Playwright.
Often, yes—especially with parallel test execution.
It’s easier to iterate and maintain, and it can enable smarter test selection in the future.
Not directly—use Scout fixtures instead.
If your feature is behind a feature flag, you can use the coreApi fixture to enable it during test execution (recommended). Alternatively, you can create a custom config directory and link your Scout tests (reach out for more info).