diff --git a/packages/e2e-test-utils-playwright/src/admin/visit-site-editor.ts b/packages/e2e-test-utils-playwright/src/admin/visit-site-editor.ts index 1e79a30306e4c..bc6e3e23d078b 100644 --- a/packages/e2e-test-utils-playwright/src/admin/visit-site-editor.ts +++ b/packages/e2e-test-utils-playwright/src/admin/visit-site-editor.ts @@ -61,15 +61,22 @@ export async function visitSiteEditor( '.edit-site-canvas-loader, .edit-site-canvas-spinner' ); - // Wait for the canvas loader to appear first, so that the locator that - // waits for the hidden state doesn't resolve prematurely. - await canvasLoader.waitFor( { state: 'visible', timeout: 60_000 } ); - await canvasLoader.waitFor( { - state: 'hidden', - // Bigger timeout is needed for larger entities, like the Large Post - // HTML fixture that we load for performance tests, which often - // doesn't make it under the default timeout value. - timeout: 60_000, - } ); + try { + // Wait for the canvas loader to appear first, so that the locator that + // waits for the hidden state doesn't resolve prematurely. + await canvasLoader.waitFor( { state: 'visible', timeout: 60_000 } ); + await canvasLoader.waitFor( { + state: 'hidden', + // Bigger timeout is needed for larger entities, like the Large Post + // HTML fixture that we load for performance tests, which often + // doesn't make it under the default timeout value. + timeout: 60_000, + } ); + } catch ( error ) { + // If the canvas loader is already disappeared, skip the waiting. + await this.page + .getByRole( 'region', { name: 'Editor content' } ) + .waitFor(); + } } }