diff --git a/src/ui/public/vis/editors/default/agg_group.html b/src/ui/public/vis/editors/default/agg_group.html
index dfa04e4de9dc55..965390fd86091f 100644
--- a/src/ui/public/vis/editors/default/agg_group.html
+++ b/src/ui/public/vis/editors/default/agg_group.html
@@ -10,6 +10,6 @@
-
+
diff --git a/src/ui/public/vis/editors/default/sidebar.html b/src/ui/public/vis/editors/default/sidebar.html
index 6b04bb29819762..511a21ca0aa91d 100644
--- a/src/ui/public/vis/editors/default/sidebar.html
+++ b/src/ui/public/vis/editors/default/sidebar.html
@@ -139,10 +139,10 @@
-
+
-
+
diff --git a/test/functional/apps/getting_started/_shakespeare.js b/test/functional/apps/getting_started/_shakespeare.js
index 6a16d98e3815c5..d421aa66167254 100644
--- a/test/functional/apps/getting_started/_shakespeare.js
+++ b/test/functional/apps/getting_started/_shakespeare.js
@@ -107,7 +107,6 @@ export default function ({ getService, getPageObjects }) {
*/
it('should configure Terms aggregation on play_name', async function () {
await PageObjects.visualize.clickBucket('X-Axis');
- await PageObjects.common.sleep(1000);
log.debug('Aggregation = Terms');
await PageObjects.visualize.selectAggregation('Terms');
aggIndex = aggIndex + 1;
@@ -139,7 +138,7 @@ export default function ({ getService, getPageObjects }) {
*/
it('should configure Max aggregation metric on speech_number', async function () {
await PageObjects.visualize.clickAddMetric();
- await PageObjects.visualize.clickBucket('Y-Axis');
+ await PageObjects.visualize.clickBucket('Y-Axis', 'metric');
log.debug('Aggregation = Max');
await PageObjects.visualize.selectYAxisAggregation('Max', 'speech_number', 'Max Speaking Parts', aggIndex);
await PageObjects.visualize.clickGo();
diff --git a/test/functional/apps/visualize/_data_table.js b/test/functional/apps/visualize/_data_table.js
index bf6c4e541a762a..0941b02244de8e 100644
--- a/test/functional/apps/visualize/_data_table.js
+++ b/test/functional/apps/visualize/_data_table.js
@@ -110,7 +110,7 @@ export default function ({ getService, getPageObjects }) {
await PageObjects.visualize.clickNewSearch();
await PageObjects.header.setAbsoluteRange(fromTime, toTime);
await PageObjects.visualize.clickAddMetric();
- await PageObjects.visualize.clickBucket('Metric');
+ await PageObjects.visualize.clickBucket('Metric', 'metric');
await PageObjects.visualize.selectAggregation('Average Bucket', 'metrics');
await PageObjects.visualize.selectAggregation('Terms', 'metrics', 'buckets');
await PageObjects.visualize.selectField('geo.src', 'metrics', 'buckets');
diff --git a/test/functional/apps/visualize/_data_table_nontimeindex.js b/test/functional/apps/visualize/_data_table_nontimeindex.js
index 5a4b5f82acf545..557003f18a1cfd 100644
--- a/test/functional/apps/visualize/_data_table_nontimeindex.js
+++ b/test/functional/apps/visualize/_data_table_nontimeindex.js
@@ -37,7 +37,6 @@ export default function ({ getService, getPageObjects }) {
log.debug('clickNewSearch');
await PageObjects.visualize.clickNewSearch(PageObjects.visualize.index.LOGSTASH_NON_TIME_BASED);
log.debug('Bucket = Split Rows');
- await PageObjects.common.sleep(500);
await PageObjects.visualize.clickBucket('Split Rows');
log.debug('Aggregation = Histogram');
await PageObjects.visualize.selectAggregation('Histogram');
@@ -105,7 +104,7 @@ export default function ({ getService, getPageObjects }) {
await PageObjects.visualize.clickDataTable();
await PageObjects.visualize.clickNewSearch(PageObjects.visualize.index.LOGSTASH_NON_TIME_BASED);
await PageObjects.visualize.clickAddMetric();
- await PageObjects.visualize.clickBucket('Metric');
+ await PageObjects.visualize.clickBucket('Metric', 'metric');
await PageObjects.visualize.selectAggregation('Average Bucket', 'metrics');
await PageObjects.visualize.selectAggregation('Terms', 'metrics', 'buckets');
await PageObjects.visualize.selectField('geo.src', 'metrics', 'buckets');
@@ -119,7 +118,6 @@ export default function ({ getService, getPageObjects }) {
await PageObjects.visualize.navigateToNewVisualization();
await PageObjects.visualize.clickDataTable();
await PageObjects.visualize.clickNewSearch(PageObjects.visualize.index.LOGSTASH_NON_TIME_BASED);
- await PageObjects.common.sleep(500);
await PageObjects.visualize.clickBucket('Split Rows');
await PageObjects.visualize.selectAggregation('Date Histogram');
await PageObjects.visualize.selectField('@timestamp');
@@ -139,7 +137,6 @@ export default function ({ getService, getPageObjects }) {
await PageObjects.visualize.navigateToNewVisualization();
await PageObjects.visualize.clickDataTable();
await PageObjects.visualize.clickNewSearch(PageObjects.visualize.index.LOGSTASH_NON_TIME_BASED);
- await PageObjects.common.sleep(500);
await PageObjects.visualize.clickBucket('Split Rows');
await PageObjects.visualize.selectAggregation('Date Histogram');
await PageObjects.visualize.selectField('@timestamp');
diff --git a/test/functional/apps/visualize/_gauge_chart.js b/test/functional/apps/visualize/_gauge_chart.js
index da54b826976dc9..f0aeb8fbdb4a4d 100644
--- a/test/functional/apps/visualize/_gauge_chart.js
+++ b/test/functional/apps/visualize/_gauge_chart.js
@@ -76,12 +76,11 @@ export default function ({ getService, getPageObjects }) {
const expectedTexts = [ '2,904\nwin 8: Count', '0B\nwin 8: Min bytes' ];
await PageObjects.visualize.clickMetricEditor();
- await PageObjects.visualize.clickBucket('Split Group');
await PageObjects.visualize.selectAggregation('Terms');
await PageObjects.visualize.selectField('machine.os.raw');
await PageObjects.visualize.setSize('1');
await PageObjects.visualize.clickAddMetric();
- await PageObjects.visualize.clickBucket('Metric');
+ await PageObjects.visualize.clickBucket('Metric', 'metric');
await PageObjects.visualize.selectAggregation('Min', 'metrics');
await PageObjects.visualize.selectField('bytes', 'metrics');
await PageObjects.visualize.clickGo();
diff --git a/test/functional/apps/visualize/_inspector.js b/test/functional/apps/visualize/_inspector.js
index 3c816eafaf6ec8..7ddf7d817471d1 100644
--- a/test/functional/apps/visualize/_inspector.js
+++ b/test/functional/apps/visualize/_inspector.js
@@ -48,7 +48,7 @@ export default function ({ getService, getPageObjects }) {
log.debug('Add Average Metric on machine.ram field');
await PageObjects.visualize.clickAddMetric();
- await PageObjects.visualize.clickBucket('Y-Axis');
+ await PageObjects.visualize.clickBucket('Y-Axis', 'metric');
await PageObjects.visualize.selectAggregation('Average', 'metrics');
await PageObjects.visualize.selectField('machine.ram', 'metrics');
await PageObjects.visualize.clickGo();
diff --git a/test/functional/apps/visualize/_point_series_options.js b/test/functional/apps/visualize/_point_series_options.js
index dd19531a4d6df3..91e9e4e05a2bf1 100644
--- a/test/functional/apps/visualize/_point_series_options.js
+++ b/test/functional/apps/visualize/_point_series_options.js
@@ -47,7 +47,7 @@ export default function ({ getService, getPageObjects }) {
log.debug('Add Metric');
await PageObjects.visualize.clickAddMetric();
log.debug('Metric = Value Axis');
- await PageObjects.visualize.clickBucket('Y-Axis');
+ await PageObjects.visualize.clickBucket('Y-Axis', 'metric');
log.debug('Aggregation = Average');
await PageObjects.visualize.selectAggregation('Average', 'metrics');
log.debug('Field = memory');
diff --git a/test/functional/apps/visualize/_tag_cloud.js b/test/functional/apps/visualize/_tag_cloud.js
index 51d8b51b894af0..de016cb93e4ae3 100644
--- a/test/functional/apps/visualize/_tag_cloud.js
+++ b/test/functional/apps/visualize/_tag_cloud.js
@@ -41,10 +41,8 @@ export default function ({ getService, getPageObjects }) {
await PageObjects.visualize.clickNewSearch();
log.debug('Set absolute time range from \"' + fromTime + '\" to \"' + toTime + '\"');
await PageObjects.header.setAbsoluteRange(fromTime, toTime);
- await PageObjects.common.sleep(1000);
log.debug('select Tags');
await PageObjects.visualize.clickBucket('Tags');
- await PageObjects.common.sleep(1000);
log.debug('Click aggregation Terms');
await PageObjects.visualize.selectAggregation('Terms');
log.debug('Click field machine.ram');
diff --git a/test/functional/page_objects/visualize_page.js b/test/functional/page_objects/visualize_page.js
index 0e571efcc070fc..a1103eb1762fcf 100644
--- a/test/functional/page_objects/visualize_page.js
+++ b/test/functional/page_objects/visualize_page.js
@@ -392,20 +392,26 @@ export function VisualizePageProvider({ getService, getPageObjects }) {
}
// clickBucket(bucketType) 'X-Axis', 'Split Area', 'Split Chart'
- async clickBucket(bucketName) {
- const chartTypes = await retry.try(
- async () => await find.allByCssSelector('li.list-group-item.list-group-menu-item'));
- log.debug('found bucket types ' + chartTypes.length);
-
- async function getChartType(chart) {
- const chartString = await chart.getVisibleText();
- if (chartString === bucketName) {
- await chart.click();
- await PageObjects.common.sleep(500);
+ async clickBucket(bucketName, type = 'bucket') {
+ const testSubject = type === 'bucket' ? 'bucketsAggGroup' : 'metricsAggGroup';
+ await retry.try(async () => {
+ const chartTypes = await retry.try(
+ async () => await find.allByCssSelector(`[data-test-subj="${testSubject}"] .list-group-menu-item`));
+ log.debug('found bucket types ' + chartTypes.length);
+
+ async function getChartType(chart) {
+ const chartString = await chart.getVisibleText();
+ if (chartString === bucketName) {
+ await chart.click();
+ return true;
+ }
}
- }
- const getChartTypesPromises = chartTypes.map(getChartType);
- await Promise.all(getChartTypesPromises);
+ const getChartTypesPromises = chartTypes.map(getChartType);
+ const clickResult = await Promise.all(getChartTypesPromises);
+ if (!clickResult.some(result => result === true)) {
+ throw new Error(`bucket ${bucketName} not found`);
+ }
+ });
}
async selectAggregation(myString, groupName = 'buckets', childAggregationType = null) {