Skip to content

[Feature]: Re-introduce PLAYWRIGHT_SKIP_NAVIGATION_CHECK environment variable #38077

@ElectroNafta

Description

@ElectroNafta

🚀 Feature Request

Hey Playwright team 👋

In the Proton Mail Desktop application (source code), we fetch and render the web content directly from a remote server.

Some routes and subdomains (calendar, mail, account, etc.), are intercepted by Electron from Chromium and are instead rendered in separate webviews instead of normal navigation. On web, this behavior would be a standard page redirect.

We're now developing e2e UI tests with Playwright. When redirects occur, due to the aforementioned behavior, Electron intercepts them and renders the content in a different webview. Thus no navigation happens in the original page. This causes Playwright's navigation waiting to hang indefinitely, as it's waiting for a navigation event that will never fire/succeed.

From what I can tell, there's no way to explicitly disable this navigation waiting behavior, beyond the PLAYWRIGHT_SKIP_NAVIGATION_CHECK environment variable, which was removed as of #36283.

The easiest way to handle this would be to re-introduce the variable for which I've opened a PR #37993. However, if there's an alternative approach we're missing, I'd be happy to try it out.

Example

Engineers can set this environment variable to disable Playwright navigation wait checks explicitly.

Motivation

Our application, and potentially others might rely on such redirect interception behavior. Currently there's no option to disable this outright and in turn Playwright is somewhat in an unusable state for cases such as that.

Re-introducing the environment variable would make Playwright almost fully compliant with such approaches.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions