mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 01:38:56 -04:00
## Summary This PR adds boilerplate code and a few initial end-to-end tests to serverless plugins. Note that the tests defined in this PR are not part of any CI run yet, this will be done in a follow-up after this PR is merged. ### Details The serverless test structure corresponds to what we have in `x-pack/test` with API tests in `api_integration` and UI tests in `functional`, each with their set of helper methods and sub-directories for - `common` functionality shared across serverless projects (core, shared UX, ...) - `observability` project specific functionality - `search` project specific functionality - `security` project specific functionality The `shared` directory contains fixtures, services, ... that are shared across `api_integration` abd `functional` tests. ``` x-pack/test_serverless/ ├─ api_integration │ ├─ services │ ├─ test_suites │ │ ├─ common │ │ ├─ observability │ │ ├─ search │ │ ├─ security ├─ functional │ ├─ page_objects │ ├─ services │ ├─ test_suites │ │ ├─ common │ │ ├─ observability │ │ ├─ search │ │ ├─ security ├─ shared │ ├─ services │ ├─ types ``` See also `x-pack/test_serverless/README.md` ### Run tests Similar to how functional tests are run in `x-pack/test`, you can point the functional tests server and test runner to config files in this `x-pack/test_serverless` directory, e.g. from the `x-pack` directory run: ``` node scripts/functional_tests_server.js --config test_serverless/api_integration/test_suites/common/config.ts ``` and ``` node scripts/functional_test_runner.js --config test_serverless/api_integration/test_suites/common/config.ts ``` ### Additional changes - The stateful `common_page` page object used the existence of the global nav to determine `isChromeVisible` and `isChromeHidden`, which is not working when the global nav is disabled. To solve this, a `data-test-subj` that indicates the chrome visible state is added to the Kibana app wrapper and is used for the checks. - Add a few `data-test-subj` entries to the Observability overview page. - Add optional `dataTestSubj` to the `Navigation` component and use that for the serverless search nav. - Add optional `titleDataTestSubj` to the `SolutionNav` component and use it for the serverless security nav. - Add a data-test-subj entry to the Search overview page. |
||
---|---|---|
.. | ||
analytics_no_data | ||
kibana_no_data | ||
kibana_template | ||
no_data | ||
no_data_config | ||
solution_nav |