Skip to content

Commit cd109fa

Browse files
authored
[Discover] Improve Percy functional tests (#51699)
* Implement new wait for chart rendered function * Add findByCssSelector to ensure the charts have been rendered
1 parent a35a6ca commit cd109fa

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

test/visual_regression/tests/discover/chart_visualization.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ export default function ({ getService, getPageObjects }) {
2727
const kibanaServer = getService('kibanaServer');
2828
const PageObjects = getPageObjects(['common', 'discover', 'header', 'timePicker']);
2929
const visualTesting = getService('visualTesting');
30+
const find = getService('find');
3031
const defaultSettings = {
3132
defaultIndex: 'logstash-*',
3233
'discover:sampleSize': 1
@@ -48,10 +49,12 @@ export default function ({ getService, getPageObjects }) {
4849

4950
describe('query', function () {
5051
this.tags(['skipFirefox']);
52+
let renderCounter = 0;
5153

5254
it('should show bars in the correct time zone', async function () {
5355
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
5456
await PageObjects.discover.waitUntilSearchingHasFinished();
57+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
5558
await visualTesting.snapshot({
5659
show: ['discoverChart'],
5760
});
@@ -61,6 +64,7 @@ export default function ({ getService, getPageObjects }) {
6164
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
6265
await PageObjects.discover.waitUntilSearchingHasFinished();
6366
await PageObjects.discover.setChartInterval('Hourly');
67+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
6468
await visualTesting.snapshot({
6569
show: ['discoverChart'],
6670
});
@@ -70,6 +74,7 @@ export default function ({ getService, getPageObjects }) {
7074
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
7175
await PageObjects.discover.waitUntilSearchingHasFinished();
7276
await PageObjects.discover.setChartInterval('Daily');
77+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
7378
await visualTesting.snapshot({
7479
show: ['discoverChart'],
7580
});
@@ -79,6 +84,7 @@ export default function ({ getService, getPageObjects }) {
7984
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
8085
await PageObjects.discover.waitUntilSearchingHasFinished();
8186
await PageObjects.discover.setChartInterval('Weekly');
87+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
8288
await visualTesting.snapshot({
8389
show: ['discoverChart'],
8490
});
@@ -92,6 +98,7 @@ export default function ({ getService, getPageObjects }) {
9298
});
9399
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
94100
await PageObjects.discover.waitUntilSearchingHasFinished();
101+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
95102
await visualTesting.snapshot({
96103
show: ['discoverChart'],
97104
});
@@ -101,6 +108,7 @@ export default function ({ getService, getPageObjects }) {
101108
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
102109
await PageObjects.discover.waitUntilSearchingHasFinished();
103110
await PageObjects.discover.setChartInterval('Monthly');
111+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
104112
await visualTesting.snapshot({
105113
show: ['discoverChart'],
106114
});
@@ -110,6 +118,7 @@ export default function ({ getService, getPageObjects }) {
110118
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
111119
await PageObjects.discover.waitUntilSearchingHasFinished();
112120
await PageObjects.discover.setChartInterval('Yearly');
121+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
113122
await visualTesting.snapshot({
114123
show: ['discoverChart'],
115124
});
@@ -119,6 +128,7 @@ export default function ({ getService, getPageObjects }) {
119128
await PageObjects.header.awaitGlobalLoadingIndicatorHidden();
120129
await PageObjects.discover.waitUntilSearchingHasFinished();
121130
await PageObjects.discover.setChartInterval('Auto');
131+
await find.byCssSelector(`.echChart[data-ech-render-count="${++renderCounter}"]`);
122132
await visualTesting.snapshot({
123133
show: ['discoverChart'],
124134
});

0 commit comments

Comments
 (0)