From 941cef10a087d0bb3c924d95be2cfbc36efc7b91 Mon Sep 17 00:00:00 2001 From: David Munechika Date: Mon, 15 Nov 2021 09:44:03 -0500 Subject: [PATCH] fix: flaky `system-tests-firefox` job (#18848) Co-authored-by: Zach Bloomquist --- packages/server/lib/errors.js | 2 +- packages/server/test/unit/browsers/protocol_spec.ts | 4 ++-- system-tests/lib/system-tests.ts | 2 ++ .../projects/e2e/cypress/integration/screenshots_spec.js | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/server/lib/errors.js b/packages/server/lib/errors.js index c346a42472..33c35fd1c7 100644 --- a/packages/server/lib/errors.js +++ b/packages/server/lib/errors.js @@ -879,7 +879,7 @@ const getMsgByType = function (type, arg1 = {}, arg2, arg3) { ${arg1.stack}` case 'CDP_RETRYING_CONNECTION': - return `Failed to connect to ${arg2}, retrying in 1 second (attempt ${chalk.yellow(arg1)}/62)` + return `Still waiting to connect to ${arg2}, retrying in 1 second (attempt ${chalk.yellow(arg1)}/62)` case 'DEPRECATED_BEFORE_BROWSER_LAUNCH_ARGS': return stripIndent`\ Deprecation Warning: The \`before:browser:launch\` plugin event changed its signature in version \`4.0.0\` diff --git a/packages/server/test/unit/browsers/protocol_spec.ts b/packages/server/test/unit/browsers/protocol_spec.ts index 99475110be..fe4694b3d9 100644 --- a/packages/server/test/unit/browsers/protocol_spec.ts +++ b/packages/server/test/unit/browsers/protocol_spec.ts @@ -35,7 +35,7 @@ describe('lib/browsers/protocol', () => { log.getCalls().forEach((log, i) => { const line = stripAnsi(log.args[0]) - expect(line).to.include(`Failed to connect to FooBrowser, retrying in 1 second (attempt ${i + 18}/62)`) + expect(line).to.include(`Still waiting to connect to FooBrowser, retrying in 1 second (attempt ${i + 18}/62)`) }) snapshot(delays) @@ -180,7 +180,7 @@ describe('lib/browsers/protocol', () => { log.getCalls().forEach((log, i) => { const line = stripAnsi(log.args[0]) - expect(line).to.include(`Failed to connect to FooBrowser, retrying in 1 second (attempt ${i + 18}/62)`) + expect(line).to.include(`Still waiting to connect to FooBrowser, retrying in 1 second (attempt ${i + 18}/62)`) }) }) }) diff --git a/system-tests/lib/system-tests.ts b/system-tests/lib/system-tests.ts index fadad0356d..77056b5902 100644 --- a/system-tests/lib/system-tests.ts +++ b/system-tests/lib/system-tests.ts @@ -441,6 +441,8 @@ const normalizeStdout = function (str, options: any = {}) { .replace(/^(\- )(\/.*\/packages\/server\/)(.*)$/gm, '$1$3') // Different browsers have different cross-origin error messages .replace(crossOriginErrorRe, '[Cross origin error message]') + // Replaces connection warning since Firefox sometimes takes longer to connect + .replace(/Still waiting to connect to Firefox, retrying in 1 second \(attempt .+\/.+\)/g, '') if (options.sanitizeScreenshotDimensions) { // screenshot dimensions diff --git a/system-tests/projects/e2e/cypress/integration/screenshots_spec.js b/system-tests/projects/e2e/cypress/integration/screenshots_spec.js index 02c8bbcbf3..2858c23588 100644 --- a/system-tests/projects/e2e/cypress/integration/screenshots_spec.js +++ b/system-tests/projects/e2e/cypress/integration/screenshots_spec.js @@ -158,7 +158,7 @@ describe('taking screenshots', () => { const total = first + second + third + fourth const padding = 2000 // account for slower machines - expect(duration).to.be.within(total, total + padding) + expect(duration).to.be.within(total - padding, total + padding) }, }) })