-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Regression]: Locators of elements changing from/to hidden have operations hanging in 1.45.0 #31442
Comments
Could you help with a repro which we can run locally? I tried the following and it works for me: import { test } from '@playwright/test';
test('repro', async ({ page }) => {
await page.setContent(`<div style="display: none">Hello, World!</div>`);
const locator = page.locator('div');
const style = await locator.getAttribute("style");
console.log("style", style);
}); |
it looks like we're facing the same issue on our CI (job execution https://github.com/containers/podman-desktop/actions/runs/9677308859/job/26698644065?pr=7815 ) |
One detail is that the element was visible and will switch to hidden by the page adding an inline style |
@benoitf I ran podman tests on fresh checkout (1.44), but some of them failed - I probably need to set up some docker containers for it first.
|
Having a repro would help us identify an issue, so if you can reduce it or repro it on a fresh podman checkout w/ instructions, I'm happy to take a look. |
@pavelfeldman I've created a branch on the Podman Desktop repo for you https://github.com/containers/podman-desktop/tree/playwright_debug_branch that has yarn command Changing the value in EDIT: |
I can reproduce the regression, it is Electron-related. Btw, some test isolation would not hurt - I can see all your tests are using the same page. We are using fixtures for nicer electron tests upstream: https://github.com/microsoft/playwright/blob/main/tests/electron/electronTest.ts |
Last Good Version
1.44.1
First Bad Version
1.45.0
Steps to reproduce
Performing async operations on hidden (display none) locator seems to hang indefinitely, while previously they would resolve
Expected behavior
Getting a hidden elements attribute should resolve. I should log the locator on the second line and log the style attribute on the fourth line.
Actual behavior
I'm only hitting the first log
splashRoot locator('#splash-root')
Then, the browser will close for test timeout
The text was updated successfully, but these errors were encountered: