[Grok Debugger] Changed test to wait for grok debugger container to exist to fix test flakiness (#90543)

* Changed the retry to a wait for condition which will keep trying for 20 seconds to see the container. Also changed the data test subject as there was another grokDebugger test subject just in  case there was a clash.

* Added .only to be able to run the test repeatedly because group 13 is not in the flaky test runner.

* Added to group 11 because 13 is not in flaky test runner. Will revert after passing.

* Reverted change back to group 13 and removed the comment for the flaky test being skipped.

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
This commit is contained in:
John Dorlus 2021-02-09 03:05:38 -05:00 committed by GitHub
parent 451d0819bc
commit a62a229d6f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 8 deletions

View file

@ -129,7 +129,7 @@ export class GrokDebuggerComponent extends React.Component {
<EuiPageBody>
<EuiPageContent>
<EuiPageContentBody>
<EuiForm className="grokdebugger-container" data-test-subj="grokDebugger">
<EuiForm className="grokdebugger-container" data-test-subj="grokDebuggerContainer">
<EventInput value={this.state.rawEvent} onChange={this.onRawEventChange} />
<PatternInput value={this.state.pattern} onChange={this.onPatternChange} />
<EuiSpacer />

View file

@ -12,8 +12,7 @@ export default function ({ getService, getPageObjects }) {
const PageObjects = getPageObjects(['grokDebugger']);
// FLAKY: https://github.com/elastic/kibana/issues/84440
describe.skip('grok debugger app', function () {
describe('grok debugger app', function () {
this.tags('includeFirefox');
before(async () => {
await esArchiver.load('empty_kibana');

View file

@ -13,7 +13,7 @@ export function GrokDebuggerProvider({ getService }) {
const retry = getService('retry');
// test subject selectors
const SUBJ_CONTAINER = 'grokDebugger';
const SUBJ_CONTAINER = 'grokDebuggerContainer';
const SUBJ_UI_ACE_EVENT_INPUT = `${SUBJ_CONTAINER} > aceEventInput > codeEditorContainer`;
const SUBJ_UI_ACE_PATTERN_INPUT = `${SUBJ_CONTAINER} > acePatternInput > codeEditorContainer`;
@ -49,10 +49,8 @@ export function GrokDebuggerProvider({ getService }) {
}
async assertExists() {
await retry.try(async () => {
if (!(await testSubjects.exists(SUBJ_CONTAINER))) {
throw new Error('Expected to find the grok debugger');
}
await retry.waitFor('Grok Debugger to exist', async () => {
return await testSubjects.exists(SUBJ_CONTAINER);
});
}