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确保页面具有给定的标题。
用法
await Expect(Page).ToHaveTitleAsync("Playwright");
参数
-
titleOrRegExp
字符串 | 正则表达式添加于: v1.18#预期的标题或正则表达式。
-
options
PageAssertionsToHaveTitleOptions?
(可选)-
Timeout
[浮点数]? (可选)添加于: v1.18#尝试断言的超时时间,单位为毫秒。默认为
5000
。
-
返回值
ToHaveURLAsync
添加于: v1.20确保页面已导航到给定的 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使断言检查相反的条件。例如,此代码测试页面 URL 不包含 "error"
await Expect(Page).Not.ToHaveURLAsync("error");
用法
Expect(Page).Not
类型