A test framework for assessing the performance of Observability solution across various deployment types from the end-user perspective.
Test scenarios require a deployment/project to ingest scenario-specific data, examine required datasets accordingly.
Note: APM scenarios are strictly bound to data generated by apmsoak.
Make sure you have Node.js installed.
- Clone the repository.
git clone https://github.com/elastic/oblt-playwright.git
- Install dependencies:
npm install
- Install Chromium:
npx playwright install chromium
Create .env file in the root directory with the following environmental variables:
KIBANA_HOST =
ELASTICSEARCH_HOST =
KIBANA_USERNAME =
KIBANA_PASSWORD =
TIME_UNIT = 'Minutes'
TIME_VALUE = 15
API_KEY = 'ApiKey ...'
REPORT_FILE = ../test-results/results.json
In case there is a need to assess the impact of alerting rules execution on performance, it is recommended to create alerting rules before generating any data by running the following command:
npx playwright test alerting_rules.api.spec.ts --project api
Note: API key is required.
Examine available test scenarios and required datasets. Have ideas for new user journeys? Check the guide for creating a new test.
By default, tests run in headless mode. To launch browsers in headed mode, use the --headed
flag.
It is recommended to run tests during ongoing data collection.
Specify script name and project name (stateful
or serverless
) in the test command. Example:
npx playwright test apm.serverless.spec.ts --project serverless --headed
Specify test name and project name (stateful
or serverless
) in the test command. Example:
npx playwright test -g "Auto-detect logs and metrics" --project serverless --headed
To authorize access to Elasticsearch resources, pass your API key into API_KEY
environmental variable. To run a suite of API tests, specify correspondent project name (api
) in the following command:
npx playwright test --project api