Skip to content

Commit 3352ffb

Browse files
[FTR-to-Scout Visualizations] Remove deprecated serverless config files and update test tags for Lens parallel tests (#277244)
## Summary Closes #277134 Completes the serverless half of [#267494](#267494) by retiring the agg-based open_in_lens serverless FTR suites now covered by the existing Scout specs from [#274180](#274180). Serverless FTR and Scout both used the same dashboard-fixture model (convertToLensByTitle on pre-built panels), so no new conversion scenarios were needed. This PR: - Switches all 7 agg-based Scout specs from tags.stateful.classic to tags.deploymentAgnostic so they run on stateful and serverless (search, observability, security) in CI - Deletes superseded serverless FTR visualization groups 2, 9, and 10 (metric/pie/xy, gauge/goal/table, heatmap) - Removes 8 dedicated serverless FTR config files and trims security/config.group18.ts - Removes duplicate serverless kbn archives (Scout fixtures under lens/test/scout/ui/fixtures/kbn_archives/ are the source of truth) - Drops a redundant positive availability check in pie.spec.ts (action visibility is already exercised by the full conversion flow) - Updates Buildkite FTR manifests accordingly ## Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ## Testing [lens-scout-mki-report.zip](https://github.com/user-attachments/files/30050111/lens-scout-mki-report.zip)
1 parent 2be2f71 commit 3352ffb

40 files changed

Lines changed: 126 additions & 4090 deletions

File tree

.buildkite/ftr-manifests/ftr_oblt_serverless_configs.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ enabled:
2828
- x-pack/platform/test/serverless/functional/configs/observability/config.config_compat_mode.ts
2929
- x-pack/platform/test/serverless/functional/configs/observability/config.group1.ts
3030
- x-pack/platform/test/serverless/functional/configs/observability/config.group2.ts
31-
- x-pack/platform/test/serverless/functional/configs/observability/config.group3.ts
3231
- x-pack/platform/test/serverless/functional/configs/observability/config.group5.ts
3332
- x-pack/platform/test/serverless/functional/configs/observability/config.group6.ts
3433
- x-pack/platform/test/serverless/functional/configs/observability/config.reporting.ts
@@ -39,8 +38,6 @@ enabled:
3938
- x-pack/platform/test/serverless/functional/configs/observability/config.group12.ts
4039
- x-pack/platform/test/serverless/functional/configs/observability/config.group13.ts
4140
- x-pack/platform/test/serverless/functional/configs/observability/config.group14.ts
42-
- x-pack/platform/test/serverless/functional/configs/observability/config.group15.ts
43-
- x-pack/platform/test/serverless/functional/configs/observability/config.group16.ts
4441
- x-pack/platform/test/serverless/functional/configs/observability/config.group17.ts
4542
- x-pack/platform/test/serverless/functional/configs/observability/config.group18.ts
4643
- x-pack/platform/test/serverless/functional/configs/observability/config.feature_flags.ts

.buildkite/ftr-manifests/ftr_search_serverless_configs.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ enabled:
1616
- x-pack/platform/test/serverless/functional/configs/search/config.config_compat_mode.ts
1717
- x-pack/platform/test/serverless/functional/configs/search/config.group1.ts
1818
- x-pack/platform/test/serverless/functional/configs/search/config.group2.ts
19-
- x-pack/platform/test/serverless/functional/configs/search/config.group3.ts
2019
- x-pack/platform/test/serverless/functional/configs/search/config.group5.ts
2120
- x-pack/platform/test/serverless/functional/configs/search/config.group6.ts
2221
- x-pack/platform/test/serverless/functional/configs/search/config.reporting.ts
@@ -28,8 +27,6 @@ enabled:
2827
- x-pack/platform/test/serverless/functional/configs/search/config.group13.ts
2928
- x-pack/platform/test/serverless/functional/configs/search/config.group14.ts
3029
- x-pack/platform/test/serverless/functional/configs/search/config.group15.ts
31-
- x-pack/platform/test/serverless/functional/configs/search/config.group16.ts
32-
- x-pack/platform/test/serverless/functional/configs/search/config.group17.ts
3330
- x-pack/platform/test/serverless/functional/configs/search/config.group18.ts
3431
- x-pack/platform/test/serverless/functional/configs/search/config.group19.ts
3532
- x-pack/platform/test/serverless/functional/configs/search/config.feature_flags.ts

.buildkite/ftr-manifests/ftr_security_serverless_configs.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ enabled:
4949
- x-pack/platform/test/serverless/functional/configs/security/config.config_compat_mode.ts
5050
- x-pack/platform/test/serverless/functional/configs/security/config.group1.ts
5151
- x-pack/platform/test/serverless/functional/configs/security/config.group2.ts
52-
- x-pack/platform/test/serverless/functional/configs/security/config.group3.ts
5352
- x-pack/platform/test/serverless/functional/configs/security/config.group5.ts
5453
- x-pack/platform/test/serverless/functional/configs/security/config.group6.ts
5554
- x-pack/platform/test/serverless/functional/configs/security/config.reporting.ts
@@ -62,7 +61,6 @@ enabled:
6261
- x-pack/platform/test/serverless/functional/configs/security/config.group14.ts
6362
- x-pack/platform/test/serverless/functional/configs/security/config.group15.ts
6463
- x-pack/platform/test/serverless/functional/configs/security/config.group16.ts
65-
- x-pack/platform/test/serverless/functional/configs/security/config.group17.ts
6664
- x-pack/platform/test/serverless/functional/configs/security/config.group18.ts
6765
- x-pack/platform/test/serverless/functional/configs/security/config.feature_flags.ts
6866
- x-pack/solutions/security/test/security_solution_api_integration/test_suites/detections_response/detection_engine/actions/trial_license_complete_tier/configs/serverless.config.ts

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/gauge.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {
1616
getChartDebugData,
1717
} from '../../../fixtures';
1818

19-
spaceTest.describe('Lens open in Lens — agg-based Gauge', { tag: tags.stateful.classic }, () => {
19+
spaceTest.describe('Lens open in Lens — agg-based Gauge', { tag: tags.deploymentAgnostic }, () => {
2020
const openInLensSuite = createOpenInLensSuiteSetup({
2121
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.GAUGE,
2222
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.GAUGE,

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/goal.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { spaceTest, tags } from '@kbn/scout';
99
import { expect } from '@kbn/scout/ui';
1010
import { testData, convertToLensByTitle, createOpenInLensSuiteSetup } from '../../../fixtures';
1111

12-
spaceTest.describe('Lens open in Lens — agg-based Goal', { tag: tags.stateful.classic }, () => {
12+
spaceTest.describe('Lens open in Lens — agg-based Goal', { tag: tags.deploymentAgnostic }, () => {
1313
const openInLensSuite = createOpenInLensSuiteSetup({
1414
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.GOAL,
1515
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.GOAL,

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/heatmap.spec.ts

Lines changed: 120 additions & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -14,125 +14,135 @@ import {
1414
getChartDebugData,
1515
} from '../../../fixtures';
1616

17-
spaceTest.describe('Lens open in Lens — agg-based Heatmap', { tag: tags.stateful.classic }, () => {
18-
const openInLensSuite = createOpenInLensSuiteSetup({
19-
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.HEATMAP,
20-
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.HEATMAP,
21-
enableChartDebug: true,
22-
});
23-
24-
spaceTest.beforeAll(openInLensSuite.beforeAll);
25-
26-
spaceTest.beforeEach(openInLensSuite.beforeEach);
27-
28-
spaceTest.afterAll(openInLensSuite.afterAll);
29-
30-
spaceTest('should convert to Lens', async ({ page, pageObjects }) => {
31-
const { dashboard, lens } = pageObjects;
32-
33-
await convertToLensByTitle({ dashboard }, 'Heatmap - With X-Axis only');
34-
await lens.waitForVisualization('heatmapChart');
35-
36-
const debugState = await getChartDebugData(page, 'heatmapChart');
37-
expect(debugState.axes?.x[0].labels).toStrictEqual(['win 8', 'win xp', 'win 7', 'ios', 'osx']);
38-
expect(debugState.axes?.y[0].labels).toStrictEqual(['']);
39-
expect(debugState.heatmap?.cells).toHaveLength(5);
40-
expect(debugState.legend?.items).toStrictEqual([
41-
{
42-
color: '#006837',
43-
key: '1,322 - 1,717.5',
44-
name: '1,322 - 1,717.5',
45-
},
46-
{ color: '#86cb66', key: '1,717.5 - 2,113', name: '1,717.5 - 2,113' },
47-
{
48-
color: '#fefebd',
49-
key: '2,113 - 2,508.5',
50-
name: '2,113 - 2,508.5',
51-
},
52-
{
53-
color: '#f88d52',
54-
key: '2,508.5 - 2,904',
55-
name: '2,508.5 - 2,904',
56-
},
57-
]);
58-
});
59-
60-
spaceTest(
61-
'should convert to Lens if Y-axis is defined, but X-axis is not',
62-
async ({ page, pageObjects }) => {
17+
spaceTest.describe(
18+
'Lens open in Lens — agg-based Heatmap',
19+
{ tag: tags.deploymentAgnostic },
20+
() => {
21+
const openInLensSuite = createOpenInLensSuiteSetup({
22+
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.HEATMAP,
23+
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.HEATMAP,
24+
enableChartDebug: true,
25+
});
26+
27+
spaceTest.beforeAll(openInLensSuite.beforeAll);
28+
29+
spaceTest.beforeEach(openInLensSuite.beforeEach);
30+
31+
spaceTest.afterAll(openInLensSuite.afterAll);
32+
33+
spaceTest('should convert to Lens', async ({ page, pageObjects }) => {
6334
const { dashboard, lens } = pageObjects;
6435

65-
await convertToLensByTitle({ dashboard }, 'Heatmap - With Y-Axis only');
36+
await convertToLensByTitle({ dashboard }, 'Heatmap - With X-Axis only');
6637
await lens.waitForVisualization('heatmapChart');
6738

6839
const debugState = await getChartDebugData(page, 'heatmapChart');
69-
expect(debugState.axes?.x[0].labels).toStrictEqual(['*']);
70-
expect(debugState.axes?.y[0].labels).toStrictEqual([
40+
expect(debugState.axes?.x[0].labels).toStrictEqual([
7141
'win 8',
7242
'win xp',
7343
'win 7',
7444
'ios',
7545
'osx',
7646
]);
47+
expect(debugState.axes?.y[0].labels).toStrictEqual(['']);
7748
expect(debugState.heatmap?.cells).toHaveLength(5);
78-
}
79-
);
80-
81-
spaceTest('should respect heatmap colors number', async ({ page, pageObjects }) => {
82-
const { dashboard, lens } = pageObjects;
83-
84-
await convertToLensByTitle({ dashboard }, 'Heatmap - Color number');
85-
await lens.waitForVisualization('heatmapChart');
86-
87-
const debugState = await getChartDebugData(page, 'heatmapChart');
88-
expect(debugState.legend?.items).toStrictEqual([
89-
{ key: '1,322 - 1,585.667', name: '1,322 - 1,585.667', color: '#006837' },
90-
{ key: '1,585.667 - 1,849.333', name: '1,585.667 - 1,849.333', color: '#4cb15d' },
91-
{ key: '1,849.333 - 2,113', name: '1,849.333 - 2,113', color: '#b7e075' },
92-
{ key: '2,113 - 2,376.667', name: '2,113 - 2,376.667', color: '#fefebd' },
93-
{ key: '2,376.667 - 2,640.333', name: '2,376.667 - 2,640.333', color: '#fdbf6f' },
94-
{ key: '2,640.333 - 2,904', name: '2,640.333 - 2,904', color: '#ea5839' },
95-
]);
96-
});
97-
98-
spaceTest('should respect heatmap custom color ranges', async ({ page, pageObjects }) => {
99-
const { dashboard, lens } = pageObjects;
100-
101-
await convertToLensByTitle({ dashboard }, 'Heatmap - Custom Color ranges');
102-
await lens.waitForVisualization('heatmapChart');
103-
104-
const debugState = await getChartDebugData(page, 'heatmapChart');
105-
expect(debugState.legend?.items).toStrictEqual([
106-
{
107-
color: '#006837',
108-
key: '0 - 100',
109-
name: '0 - 100',
110-
},
111-
{
112-
color: '#65bc62',
113-
key: '100 - 200',
114-
name: '100 - 200',
115-
},
116-
{
117-
color: '#d8ef8c',
118-
key: '200 - 300',
119-
name: '200 - 300',
120-
},
121-
{
122-
color: '#fedf8b',
123-
key: '300 - 400',
124-
name: '300 - 400',
125-
},
126-
{
127-
color: '#f36d43',
128-
key: '400 - 500',
129-
name: '400 - 500',
130-
},
131-
{
132-
color: '#a50026',
133-
key: '500 - 600',
134-
name: '500 - 600',
135-
},
136-
]);
137-
});
138-
});
49+
expect(debugState.legend?.items).toStrictEqual([
50+
{
51+
color: '#006837',
52+
key: '1,322 - 1,717.5',
53+
name: '1,322 - 1,717.5',
54+
},
55+
{ color: '#86cb66', key: '1,717.5 - 2,113', name: '1,717.5 - 2,113' },
56+
{
57+
color: '#fefebd',
58+
key: '2,113 - 2,508.5',
59+
name: '2,113 - 2,508.5',
60+
},
61+
{
62+
color: '#f88d52',
63+
key: '2,508.5 - 2,904',
64+
name: '2,508.5 - 2,904',
65+
},
66+
]);
67+
});
68+
69+
spaceTest(
70+
'should convert to Lens if Y-axis is defined, but X-axis is not',
71+
async ({ page, pageObjects }) => {
72+
const { dashboard, lens } = pageObjects;
73+
74+
await convertToLensByTitle({ dashboard }, 'Heatmap - With Y-Axis only');
75+
await lens.waitForVisualization('heatmapChart');
76+
77+
const debugState = await getChartDebugData(page, 'heatmapChart');
78+
expect(debugState.axes?.x[0].labels).toStrictEqual(['*']);
79+
expect(debugState.axes?.y[0].labels).toStrictEqual([
80+
'win 8',
81+
'win xp',
82+
'win 7',
83+
'ios',
84+
'osx',
85+
]);
86+
expect(debugState.heatmap?.cells).toHaveLength(5);
87+
}
88+
);
89+
90+
spaceTest('should respect heatmap colors number', async ({ page, pageObjects }) => {
91+
const { dashboard, lens } = pageObjects;
92+
93+
await convertToLensByTitle({ dashboard }, 'Heatmap - Color number');
94+
await lens.waitForVisualization('heatmapChart');
95+
96+
const debugState = await getChartDebugData(page, 'heatmapChart');
97+
expect(debugState.legend?.items).toStrictEqual([
98+
{ key: '1,322 - 1,585.667', name: '1,322 - 1,585.667', color: '#006837' },
99+
{ key: '1,585.667 - 1,849.333', name: '1,585.667 - 1,849.333', color: '#4cb15d' },
100+
{ key: '1,849.333 - 2,113', name: '1,849.333 - 2,113', color: '#b7e075' },
101+
{ key: '2,113 - 2,376.667', name: '2,113 - 2,376.667', color: '#fefebd' },
102+
{ key: '2,376.667 - 2,640.333', name: '2,376.667 - 2,640.333', color: '#fdbf6f' },
103+
{ key: '2,640.333 - 2,904', name: '2,640.333 - 2,904', color: '#ea5839' },
104+
]);
105+
});
106+
107+
spaceTest('should respect heatmap custom color ranges', async ({ page, pageObjects }) => {
108+
const { dashboard, lens } = pageObjects;
109+
110+
await convertToLensByTitle({ dashboard }, 'Heatmap - Custom Color ranges');
111+
await lens.waitForVisualization('heatmapChart');
112+
113+
const debugState = await getChartDebugData(page, 'heatmapChart');
114+
expect(debugState.legend?.items).toStrictEqual([
115+
{
116+
color: '#006837',
117+
key: '0 - 100',
118+
name: '0 - 100',
119+
},
120+
{
121+
color: '#65bc62',
122+
key: '100 - 200',
123+
name: '100 - 200',
124+
},
125+
{
126+
color: '#d8ef8c',
127+
key: '200 - 300',
128+
name: '200 - 300',
129+
},
130+
{
131+
color: '#fedf8b',
132+
key: '300 - 400',
133+
name: '300 - 400',
134+
},
135+
{
136+
color: '#f36d43',
137+
key: '400 - 500',
138+
name: '400 - 500',
139+
},
140+
{
141+
color: '#a50026',
142+
key: '500 - 600',
143+
name: '500 - 600',
144+
},
145+
]);
146+
});
147+
}
148+
);

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/metric.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import {
1414
createOpenInLensSuiteSetup,
1515
} from '../../../fixtures';
1616

17-
spaceTest.describe('Lens open in Lens — agg-based Metric', { tag: tags.stateful.classic }, () => {
17+
spaceTest.describe('Lens open in Lens — agg-based Metric', { tag: tags.deploymentAgnostic }, () => {
1818
const openInLensSuite = createOpenInLensSuiteSetup({
1919
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.METRIC,
2020
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.METRIC,

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/pie.spec.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ function formatPieSliceLabel(name: string | number): string {
3737
return name;
3838
}
3939

40-
spaceTest.describe('Lens open in Lens — agg-based Pie', { tag: tags.stateful.classic }, () => {
40+
spaceTest.describe('Lens open in Lens — agg-based Pie', { tag: tags.deploymentAgnostic }, () => {
4141
const openInLensSuite = createOpenInLensSuiteSetup({
4242
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.PIE,
4343
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.PIE,
@@ -60,10 +60,6 @@ spaceTest.describe('Lens open in Lens — agg-based Pie', { tag: tags.stateful.c
6060
await spaceTest.step('hides action when more than 3 split slices were defined', async () => {
6161
expect(await canConvertToLensByTitle({ dashboard }, 'Pie - 4 layers')).toBe(false);
6262
});
63-
64-
await spaceTest.step('shows action for a single split slice', async () => {
65-
expect(await canConvertToLensByTitle({ dashboard }, 'Pie - 1 Split slice')).toBe(true);
66-
});
6763
});
6864

6965
spaceTest('should convert aggregation with params', async ({ pageObjects }) => {

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/table.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ const getDimensionFlyoutComboBoxSelectedOptions = async (
2323
return page.components.comboBox(comboBoxTestSubj).getSelectedOptions();
2424
};
2525

26-
spaceTest.describe('Lens open in Lens — agg-based Table', { tag: tags.stateful.classic }, () => {
26+
spaceTest.describe('Lens open in Lens — agg-based Table', { tag: tags.deploymentAgnostic }, () => {
2727
const openInLensSuite = createOpenInLensSuiteSetup({
2828
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.TABLE,
2929
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.TABLE,

x-pack/platform/plugins/shared/lens/test/scout/ui/parallel_tests/open_in_lens/agg_based/xy.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import {
1515
getChartDebugData,
1616
} from '../../../fixtures';
1717

18-
spaceTest.describe('Lens open in Lens — agg-based XY', { tag: tags.stateful.classic }, () => {
18+
spaceTest.describe('Lens open in Lens — agg-based XY', { tag: tags.deploymentAgnostic }, () => {
1919
const openInLensSuite = createOpenInLensSuiteSetup({
2020
archivePath: testData.KBN_ARCHIVE_PATHS.OPEN_IN_LENS.AGG_BASED.XY,
2121
dashboardTitles: testData.DASHBOARD_TITLES.OPEN_IN_LENS.AGG_BASED.XY,

0 commit comments

Comments
 (0)