PageAssertions
The PageAssertions class provides assertion methods that can be used to make assertions about the Page state in the tests.
- Sync
- Async
import re
from playwright.sync_api import Page, expect
def test_navigates_to_login_page(page: Page) -> None:
# ..
page.get_by_text("Sign in").click()
expect(page).to_have_url(re.compile(r".*/login"))
import re
from playwright.async_api import Page, expect
async def test_navigates_to_login_page(page: Page) -> None:
# ..
await page.get_by_text("Sign in").click()
await expect(page).to_have_url(re.compile(r".*/login"))
Methods
not_to_have_title
Added in: v1.20The opposite of expect(page).to_have_title().
Usage
expect(page).not_to_have_title(title_or_reg_exp)
expect(page).not_to_have_title(title_or_reg_exp, **kwargs)
Arguments
-
title_or_reg_exp
str | Pattern Added in: v1.18#Expected title or RegExp.
-
timeout
float (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
Returns
not_to_have_url
Added in: v1.20The opposite of expect(page).to_have_url().
Usage
expect(page).not_to_have_url(url_or_reg_exp)
expect(page).not_to_have_url(url_or_reg_exp, **kwargs)
Arguments
-
url_or_reg_exp
str | Pattern Added in: v1.18#Expected URL string or RegExp.
-
ignore_case
bool (optional) Added in: v1.44#Whether to perform case-insensitive match.
ignore_case
option takes precedence over the corresponding regular expression flag if specified. -
timeout
float (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
Returns
to_have_title
Added in: v1.20Ensures the page has the given title.
Usage
- Sync
- Async
import re
from playwright.sync_api import expect
# ...
expect(page).to_have_title(re.compile(r".*checkout"))
import re
from playwright.async_api import expect
# ...
await expect(page).to_have_title(re.compile(r".*checkout"))
Arguments
-
title_or_reg_exp
str | Pattern Added in: v1.18#Expected title or RegExp.
-
timeout
float (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
Returns
to_have_url
Added in: v1.20Ensures the page is navigated to the given URL.
Usage
- Sync
- Async
import re
from playwright.sync_api import expect
# ...
expect(page).to_have_url(re.compile(".*checkout"))
import re
from playwright.async_api import expect
# ...
await expect(page).to_have_url(re.compile(".*checkout"))
Arguments
-
url_or_reg_exp
str | Pattern Added in: v1.18#Expected URL string or RegExp.
-
ignore_case
bool (optional) Added in: v1.44#Whether to perform case-insensitive match.
ignore_case
option takes precedence over the corresponding regular expression flag if specified. -
timeout
float (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
Returns