Add a slight delay before selecting a visualization type (#169851)

## Summary

Attempt at fixing https://github.com/elastic/kibana/issues/89958

As per my [latest
comment](https://github.com/elastic/kibana/issues/89958#issuecomment-1779553320)
on the issue, I believe that the test logic sometimes fails to select
the appropriate visualisation type, in this case `Text` (aka markdown).

The failure manifests [a couple of steps
later](https://github.com/elastic/kibana/blob/main/x-pack/test/saved_object_tagging/functional/tests/visualize_integration.ts#L155),
as this operation does not meet the expected "before state".

The strategy of this fix consists in introducing an extra step,
searching for the visualisation type, which should give the UI enough
time to attach an event handler to the control.
This commit is contained in:
Gerard Soldevila 2023-10-26 11:50:04 +02:00 committed by GitHub
parent b759b8f279
commit 3d19006052
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 2 deletions

View file

@ -170,6 +170,11 @@ export class VisualizePageObject extends FtrService {
}
public async clickVisType(type: string) {
// checking for the existence of the control gives the UI more time to bind a click handler
// see https://github.com/elastic/kibana/issues/89958
if (!(await this.hasVisType(type))) {
throw new Error(`The '${type}' visualization type does not exist (visType-${type})`);
}
await this.testSubjects.click(`visType-${type}`);
await this.header.waitUntilLoadingHasFinished();
}

View file

@ -123,8 +123,7 @@ export default function ({ getPageObjects, getService }: FtrProviderContext) {
});
});
// FLAKY: https://github.com/elastic/kibana/issues/89958
describe.skip('creating', () => {
describe('creating', () => {
before(async () => {
await PageObjects.visualize.gotoVisualizationLandingPage();
// delete all visualizations to create new ones explicitly