我正在使用 Playwright 进行测试,需要区分使用 CSS 隐藏的元素(通过
display
、visibility
、opacity
等)和根本不渲染的元素,这意味着它不属于DOM。
在 Playwright 文档 toBeHidden 中,它指出:“E确保 Locator 不会解析为任何 DOM 节点,或者解析为不可见的节点。”
const locator = page.locator('.my-element');
await expect(locator).toBeHidden();
从这个测试中,我无法确定
.my-element
是否未渲染或只是隐藏。
Playwright 中有没有办法区分未渲染的元素和通过 CSS 隐藏的元素?
使用
expect(locator).toBeAttached()
如果它不是隐藏的并且是附加的 - 那么它是用 CSS 隐藏的