Pat*_*nny 38 typescript playwright
我正在测试一个包含徽标的网站,并且我想确保该徽标不会出现在某些页面上。
如何断言某个元素不存在?我检查了剧作家断言文档,但它只有检查确实存在的事情的示例。
async assertNoLog(): Promise<boolean> {
await this.page.locator('div#page-id'); // now the page has loaded
// How do I check if logo is on page without throwing an error if it is missing
}
Run Code Online (Sandbox Code Playgroud)
我不知道在这里写什么来断言页面上的任何地方都找不到我的元素。
Eri*_*vic 27
我想知道某个元素不在屏幕上,但我也想等到它消失,这是执行此操作的方法:
await expect(locator).toHaveCount(0);
Run Code Online (Sandbox Code Playgroud)
eme*_*ery 23
要立即检查它而不自动等待,您可以使用count()并断言它返回 0。
expect(await page.locator('.notexists').count()).toEqual(0);
Run Code Online (Sandbox Code Playgroud)
如果您希望 Playwright 等待计数变为 0(如 Web 优先断言所建议的那样),那么您应该等待 Expect 并使用toHaveCount()
await expect(page.locator('.notexists')).toHaveCount(0);
Run Code Online (Sandbox Code Playgroud)
https://playwright.dev/docs/api/class-locator#locator-count https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-count
小智 11
https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-be-attached
待附加
添加于:v1.33
确保 Locator 指向附加的 DOM 节点。
有了这个,现在我们可以这样做:
expect(locator).not.toBeAttached()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37796 次 |
| 最近记录: |