Skip to main content

PageAssertions

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

¥The PageAssertions class provides assertion methods that can be used to make assertions about the Page state in the tests.

using System.Text.RegularExpressions;
using Microsoft.Playwright;
using Microsoft.Playwright.MSTest;

namespace PlaywrightTests;

[TestClass]
public class ExampleTests : PageTest
{
[TestMethod]
public async Task NavigateToLoginPage()
{
await Page.GetByRole(AriaRole.Button, new() { Name = "Sign In" }).ClickAsync();
await Expect(Page).ToHaveURLAsync(new Regex(".*/login"));
}
}

方法

¥Methods

ToHaveTitleAsync

Added in: v1.20 pageAssertions.ToHaveTitleAsync

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

¥Ensures the page has the given title.

用法

¥Usage

await Expect(Page).ToHaveTitleAsync("Playwright");

参数

¥Arguments

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

¥Expected title or RegExp.

  • options PageAssertionsToHaveTitleOptions?(可选)

    ¥options PageAssertionsToHaveTitleOptions? (optional)

    • Timeout [float]? (optional) Added in: v1.18#

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

¥Time to retry the assertion for in milliseconds. Defaults to 5000.

返回

¥Returns


ToHaveURLAsync

Added in: v1.20 pageAssertions.ToHaveURLAsync

确保页面导航到给定的 URL。

¥Ensures the page is navigated to the given URL.

用法

¥Usage

await Expect(Page).ToHaveURLAsync(new Regex(".*checkout"));

参数

¥Arguments

需要 URL 字符串或正则表达式。

¥Expected URL string or RegExp.

  • options PageAssertionsToHaveURLOptions?(可选)

    ¥options PageAssertionsToHaveURLOptions? (optional)

    • IgnoreCase bool? (optional) Added in: v1.44#

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

¥Whether to perform case-insensitive match. IgnoreCase option takes precedence over the corresponding regular expression parameter if specified. A provided predicate ignores this flag.

  • Timeout [float]? (optional) Added in: v1.18#

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

¥Time to retry the assertion for in milliseconds. Defaults to 5000.

返回

¥Returns


属性

¥Properties

¥Not

Added in: v1.20 pageAssertions.Not

使断言检查相反的条件。例如,此代码测试页面 URL 是否不包含 "error"

¥Makes the assertion check for the opposite condition. For example, this code tests that the page URL doesn't contain "error":

await Expect(Page).Not.ToHaveURLAsync("error");

用法

¥Usage

Expect(Page).Not

类型

¥Type