[ux] migrate synthetics journeys to scout#253366
Conversation
|
/flaky scoutConfig:x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts:30 |
Flaky Test Runner✅ Build triggered - kibana-flaky-test-suite-runner#10816
|
Flaky Test Runner Stats🎉 All tests passed! - kibana-flaky-test-suite-runner#10816[✅] x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts: 30/30 tests passed. |
|
Pinging @elastic/obs-presentation-team (Team:obs-presentation) |
|
Pinging @elastic/obs-ux-management-team (Team:obs-ux-management) |
x-pack/solutions/observability/plugins/ux/test/scout/ui/tests/global.setup.ts
Outdated
Show resolved
Hide resolved
x-pack/solutions/observability/plugins/ux/test/scout/ui/tests/ux_visitor_breakdown.spec.ts
Outdated
Show resolved
Hide resolved
x-pack/solutions/observability/plugins/ux/test/scout/ui/tests/page_views.spec.ts
Outdated
Show resolved
Hide resolved
x-pack/solutions/observability/plugins/ux/test/scout/ui/fixtures/page_objects/ux_dashboard.ts
Show resolved
Hide resolved
x-pack/solutions/observability/plugins/ux/test/scout/ui/tests/page_views.spec.ts
Outdated
Show resolved
Hide resolved
Flaky Test Runner✅ Build triggered - kibana-flaky-test-suite-runner#10867
|
miguelmartin-elastic
left a comment
There was a problem hiding this comment.
LGTM, thanks for addressing the comments 🚀
x-pack/solutions/observability/plugins/ux/test/scout/ui/tests/inp.spec.ts
Show resolved
Hide resolved
Flaky Test Runner Stats🟠 Some tests failed. - kibana-flaky-test-suite-runner#10867[❌] x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts: 21/30 tests passed. |
|
/flaky scoutConfig:x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts:25 |
Flaky Test Runner✅ Build triggered - kibana-flaky-test-suite-runner#10871
|
Flaky Test Runner Stats🟠 Some tests failed. - kibana-flaky-test-suite-runner#10871[❌] x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts: 18/25 tests passed. |
|
/flaky scoutConfig:x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts:30 |
Flaky Test Runner✅ Build triggered - kibana-flaky-test-suite-runner#10873
|
Flaky Test Runner Stats🎉 All tests passed! - kibana-flaky-test-suite-runner#10873[✅] x-pack/solutions/observability/plugins/ux/test/scout/ui/playwright.config.ts: 30/30 tests passed. |
💔 Build Failed
Failed CI StepsMetrics [docs]
History
|
smith
left a comment
There was a problem hiding this comment.
Scout migration looks good. LGTM.
|
Starting backport for target branches: 9.2, 9.3 |
Closes elastic/appex-qa-team#716 ## Summary This PR migrates all running `@elastic/synthetics` journeys in the ux plugin into Scout test specs. Since Scout tests are always run, the opt-in pipeline step has been removed. ### Journeys migrated | Original journey | Scout spec | |---|---| | `core_web_vitals.ts` | `core_web_vitals.spec.ts ` | | `inp.journey.ts` | `inp.spec.ts` | | `page_views.ts` | `page_views.spec.ts` | | `url_ux_query.journey.ts` | `ux_url_query.spec.ts` | | `ux_client_metrics.journey.ts` | `ux_client_metrics.spec.ts` | | `ux_js_errors.journey.ts` | `ux_js_errors.spec.ts` | | `ux_long_task_metric_journey.ts` | `ux_long_task_metrics.spec.ts` | | `ux_visitor_breakdown.journey.ts` | `ux_visitor_breakdown.spec.ts` | Re-enabled (was commented out in original index.ts): page_views.ts ### New Scout directory structure ``` x/test/scout/ui/ ├── playwright.config.ts ├── fixtures/ │ ├── index.ts (extends ObltTestFixtures with UX page objects) │ ├── constants.ts (ES archive paths, default query params) │ └── page_objects/ │ ├── index.ts │ └── ux_dashboard.ts (navigation, loading waits, chart locators) └── tests/ ├── global.setup.ts (loads ES archives + INP test data) └── *.spec.ts (8 test specs) ``` ES archive fixtures remain at `ux/e2e/fixtures/` (rum_8.0.0, rum_test_data). ### Key fixes during migration - Updated Core Web Vitals labels: replaced deprecated `"First input delay"` with `"Interaction to next paint"` (INP replaced FID) - Fixed brittle selectors: replaced text-concatenation locators with `data-test-subj` selectors (e.g., `pvBreakdownFilter` for breakdown dropdown) - Fixed lazy-loaded sections: `LoadWhenInView` components (JS Errors, Visitor Breakdown) require scrolling the placeholder into the viewport to trigger the intersection observer - Fixed ambiguous text matching: used `{ exact: true }` for browser legend labels that match multiple elements (e.g., `"Chrome"` vs `"Chrome Mobile"`) - Removed buggy date picker override: original journeys set date range via URL params (2020–2021) then overrode to 2022 via date picker — fixture data only exists in 2020–2021, so the override was a latent bug - Guarded INP data against duplicates: added idempotency check before indexing INP test transactions ### CI changes - Added ux to `.buildkite/scout_ci_config.yml` - Removed `ux_plugin_e2e.yml` pipeline and `ux_synthetics_e2e.sh` script - Removed `ux/.buildkite/` flaky test pipeline - Cleaned up `ftr_oblt_stateful_configs.yml` Made with [Cursor](https://cursor.com) --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> (cherry picked from commit 45aebb3)
💔 Some backports could not be created
Note: Successful backport PRs will be merged automatically after passing CI. Manual backportTo create the backport manually run: Questions ?Please refer to the Backport tool documentation |
Closes https://github.com/elastic/appex-qa-team/issues/716
Summary
This PR migrates all running
@elastic/syntheticsjourneys in the ux plugin into Scout test specs.Since Scout tests are always run, the opt-in pipeline step has been removed.
Journeys migrated
core_web_vitals.tscore_web_vitals.spec.tsinp.journey.tsinp.spec.tspage_views.tspage_views.spec.tsurl_ux_query.journey.tsux_url_query.spec.tsux_client_metrics.journey.tsux_client_metrics.spec.tsux_js_errors.journey.tsux_js_errors.spec.tsux_long_task_metric_journey.tsux_long_task_metrics.spec.tsux_visitor_breakdown.journey.tsux_visitor_breakdown.spec.tsRe-enabled (was commented out in original index.ts): page_views.ts
New Scout directory structure
ES archive fixtures remain at
ux/e2e/fixtures/(rum_8.0.0, rum_test_data).Key fixes during migration
"First input delay"with"Interaction to next paint"(INP replaced FID)data-test-subjselectors (e.g.,pvBreakdownFilterfor breakdown dropdown)LoadWhenInViewcomponents (JS Errors, Visitor Breakdown) require scrolling the placeholder into the viewport to trigger the intersection observer{ exact: true }for browser legend labels that match multiple elements (e.g.,"Chrome"vs"Chrome Mobile")CI changes
.buildkite/scout_ci_config.ymlux_plugin_e2e.ymlpipeline andux_synthetics_e2e.shscriptux/.buildkite/flaky test pipelineftr_oblt_stateful_configs.ymlMade with Cursor