跳到主要内容

PageAssertions

PageAssertions 类提供了一组断言方法,可用于在测试中对 Page 的状态进行断言。

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"))

方法

not_to_have_title

新增于: v1.20 pageAssertions.not_to_have_title

expect(page).to_have_title() 相反。

用法

expect(page).not_to_have_title(title_or_reg_exp)
expect(page).not_to_have_title(title_or_reg_exp, **kwargs)

参数

  • title_or_reg_exp str | Pattern 新增于: v1.18#

    期望的标题或正则表达式。

  • timeout float (可选) 新增于: v1.18#

    断言重试的时间(毫秒)。默认为 5000

返回值


not_to_have_url

新增于: v1.20 pageAssertions.not_to_have_url

expect(page).to_have_url() 相反。

用法

expect(page).not_to_have_url(url_or_reg_exp)
expect(page).not_to_have_url(url_or_reg_exp, **kwargs)

参数

  • url_or_reg_exp str | Pattern 新增于: v1.18#

    期望的 URL 字符串或正则表达式。

  • ignore_case bool (可选) 新增于: v1.44#

    是否进行不区分大小写的匹配。ignore_case 选项优先于对应正则表达式的标志(如果指定)。

  • timeout float (可选) 新增于: v1.18#

    断言重试的时间(毫秒)。默认为 5000

返回值


to_have_title

新增于: v1.20 pageAssertions.to_have_title

确保页面具有指定的标题。

用法

import re
from playwright.sync_api import expect

# ...
expect(page).to_have_title(re.compile(r".*checkout"))

参数

  • title_or_reg_exp str | Pattern 新增于: v1.18#

    期望的标题或正则表达式。

  • timeout float (可选) 新增于: v1.18#

    断言重试的时间(毫秒)。默认为 5000

返回值


to_have_url

新增于: v1.20 pageAssertions.to_have_url

确保页面跳转到了指定的 URL。

用法

import re
from playwright.sync_api import expect

# ...
expect(page).to_have_url(re.compile(".*checkout"))

参数

  • url_or_reg_exp str | Pattern 新增于: v1.18#

    期望的 URL 字符串或正则表达式。

  • ignore_case bool (可选) 新增于: v1.44#

    是否进行不区分大小写的匹配。ignore_case 选项优先于对应正则表达式参数(如果指定)。如果提供了谓词,则忽略此标志。

  • timeout float (可选) 新增于: v1.18#

    断言重试的时间(毫秒)。默认为 5000

返回值