跳至主要内容

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

Added in: 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

Added in: 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

返回


拥有标题

Added in: 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

返回


拥有URL

Added in: 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

返回