-
Notifications
You must be signed in to change notification settings - Fork 8.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Logs Explorer] Add test suite for Dataset Selector #163079
[Logs Explorer] Add test suite for Dataset Selector #163079
Conversation
π€ GitHub commentsExpand to view the GitHub comments
Just comment with:
|
β¦ibana into 160627-log-explorer-testing
Pinging @elastic/infra-monitoring-ui (Team:Infra Monitoring UI) |
The part regarding the FTR changes have been splitted into #163633 for an easier review, it will be merged into this PR when merged into main. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work! π Thanks for the very thorough test suite, and for expanding the Browser utils.
π Build Succeeded
Metrics [docs]Async chunks
History
To update your PR or re-run it, just comment with: |
* main: (64 commits) [ML] Transforms: Fix privileges check. (elastic#163687) [Log Explorer] Add test suite for Dataset Selector (elastic#163079) [Security Solution][Endpoint] Add API checks to Endpoint Policy create/update for checking `endpointPolicyProtections` is enabled (elastic#163429) [Security Solution] Fix flaky test: x-pack/test/detection_engine_api_integration/security_and_spaces/update_prebuilt_rules_package/update_prebuilt_rules_packageΒ·ts - update_prebuilt_rules_package should allow user to install prebuilt rules from scratch, then install new rules and upgrade existing rules from the new package (elastic#163241) [Security Solution] expandable flyout - replace feature flag with advanced settings toggle (elastic#161614) [DOCS] Adds the release notes for the 8.9.1 release. (elastic#163578) [FTR] Implement browser network condition utils (elastic#163633) [Security Solution] Unskip rules table auto-refresh Cypress tests (elastic#163451) [Security Solution] Re-enable fixed rule snoozing Cypress test (elastic#160037) [Flaky Test elastic#111821] Mock `moment` to avoid midnight TZ issues (elastic#163157) Document interactive setup (elastic#163619) [Lens] Align decoration color with text color for layer actions (elastic#163630) [Lens] Relax counter field checks for saved visualizations with unsupported operations (elastic#163515) [Security Solution][Endpoint] Removes pMap and uses a for loop instead (elastic#163509) [Enterprise Search] Update Workplace Search connectors doclink (elastic#163676) Update APM (main) (elastic#163623) [Serverless] Partially fix lens/maps/visualize breadcrumbs missing title (elastic#163476) [Flaky elastic#118272] Unskip tests (elastic#163319) [APM] Make service group saved objects exportable (elastic#163569) [Observability AI Assistant] Action menu item (elastic#163463) ...
## π Summary Closes elastic#160627 This implementation adds the majority of the tests listed down here for the Log Explorer current implementation. β [**Flaky Test Runner - x50 executions**](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/2844#_) ``` β³ Discover Log-Explorer profile β³ Columns selection initialization and update β³ when the log explorer profile loads β³ should initialize the table columns to logs' default selection β³ should restore the table columns from the URL state if exists β³ Customizations β³ when Discover is loaded with the log-explorer profile β³ DatasetSelector should replace the DataViewPicker β³ the TopNav bar should hide the New, Open and Save options β³ should add a searchable deep link to the profile page β³ should render a filter controls section as part of the unified search bar β³ DatasetSelection initialization and update β³ when the "index" query param does not exist β³ should initialize the "All log datasets" selection β³ when the "index" query param exists β³ should decode and restore the selection from a valid encoded index β³ should fallback to the "All log datasets" selection and notify the user of an invalid encoded index β³ when navigating back and forth on the page history β³ should decode and restore the selection for the current index β³ Dataset Selector β³ without installed integrations or uncategorized data streams β³ when open on the first navigation level β³ should always display the "All log datasets" entry as the first item β³ should always display the unmanaged datasets entry as the second item β³ should display an error prompt if could not retrieve the integrations β³ should display an empty prompt for no integrations β³ when navigating into Uncategorized data streams β³ should display a loading skeleton while loading β³ should display an error prompt if could not retrieve the data streams β³ should display an empty prompt for no data streams β³ with installed integrations and uncategorized data streams β³ when open on the first navigation level β³ should always display the "All log datasets" entry as the first item β³ should always display the unmanaged datasets entry as the second item β³ should display a list of installed integrations β³ should sort the integrations list by the clicked sorting option β³ should filter the integrations list by the typed integration name β³ should display an empty prompt when the search does not match any result β³ should load more integrations by scrolling to the end of the list β³ when clicking on integration and moving into the second navigation level β³ should display a list of available datasets β³ should sort the datasets list by the clicked sorting option β³ should filter the datasets list by the typed dataset name β³ should update the current selection with the clicked dataset β³ when navigating into Uncategorized data streams β³ should display a list of available datasets β³ should sort the datasets list by the clicked sorting option β³ should filter the datasets list by the typed dataset name β³ should update the current selection with the clicked dataset β³ when open/close the selector β³ should restore the latest navigation panel β³ should restore the latest search results β³ when switching between integration panels β³ should remember the latest search and restore its results for each integration ``` ## Note on serverless tests suite For testing the feature in a serverless environment, we are copying all the tests into the `x-pack/test_serverless` folder until elastic#161574 is merged, which will provide a new space to write tests independently from the deployment type, avoiding then tests duplication. ## New `browser` service utils for Network conditions simulation To properly test that this feature works correctly under poor network conditions or offline scenarios, the `browser` service now exposes some new methods for altering network conditions on demand. Also, network profiles to match the [network profiles provided by Chrome debugger](https://github.com/ChromeDevTools/devtools-frontend/blob/da276a3faec9769cb55e442f0db77ebdce5cd178/front_end/core/sdk/NetworkManager.ts#L363-L393) have been created. In case the browser is not of `chromium` type and the driver does not support the network simulation, these methods throw an error that can be caught for skipping the affected test. --------- Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
π Summary
Closes #160627
This implementation adds the majority of the tests listed down here for the Log Explorer current implementation.
β Flaky Test Runner - x50 executions
Note on serverless tests suite
For testing the feature in a serverless environment, we are copying all the tests into the
x-pack/test_serverless
folder until #161574 is merged, which will provide a new space to write tests independently from the deployment type, avoiding then tests duplication.New
browser
service utils for Network conditions simulationTo properly test that this feature works correctly under poor network conditions or offline scenarios, the
browser
service now exposes some new methods for altering network conditions on demand.Also, network profiles to match the network profiles provided by Chrome debugger have been created.
In case the browser is not of
chromium
type and the driver does not support the network simulation, these methods throw an error that can be caught for skipping the affected test.