跳到主内容

Page 断言

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

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

方法

ToHaveTitleAsync

添加于: v1.20 pageAssertions.ToHaveTitleAsync

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

用法

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

参数

  • titleOrRegExp 字符串 | 正则表达式添加于: v1.18#

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

  • options PageAssertionsToHaveTitleOptions? (可选)

    • Timeout [浮点数]? (可选)添加于: v1.18#

      尝试断言的超时时间,单位为毫秒。默认为 5000

返回值


ToHaveURLAsync

添加于: v1.20 pageAssertions.ToHaveURLAsync

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

用法

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

参数

  • urlOrRegExp 字符串 | 正则表达式添加于: v1.18#

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

  • options PageAssertionsToHaveURLOptions? (可选)

    • IgnoreCase 布尔值? (可选)添加于: v1.44#

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

    • Timeout [浮点数]? (可选)添加于: v1.18#

      尝试断言的超时时间,单位为毫秒。默认为 5000

返回值


属性

Not

添加于: v1.20 pageAssertions.Not

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

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

用法

Expect(Page).Not

类型