跳到主要内容

断言

断言列表

断言描述
Expect(Locator).ToBeAttachedAsync()元素已附加
Expect(Locator).ToBeCheckedAsync()复选框已选中
Expect(Locator).ToBeDisabledAsync()元素已禁用
Expect(Locator).ToBeEditableAsync()元素可编辑
Expect(Locator).ToBeEmptyAsync()容器为空
Expect(Locator).ToBeEnabledAsync()元素已启用
Expect(Locator).ToBeFocusedAsync()元素已聚焦
Expect(Locator).ToBeHiddenAsync()元素不可见
Expect(Locator).ToBeInViewportAsync()元素与视口相交
Expect(Locator).ToBeVisibleAsync()元素可见
Expect(Locator).ToContainTextAsync()元素包含文本
Expect(Locator).ToHaveAccessibleDescriptionAsync()元素具有匹配的可访问描述
Expect(Locator).ToHaveAccessibleNameAsync()元素具有匹配的可访问名称
Expect(Locator).ToHaveAttributeAsync()元素具有 DOM 属性
Expect(Locator).ToHaveClassAsync()元素具有 class 属性
Expect(Locator).ToHaveCountAsync()列表具有确切数量的子元素
Expect(Locator).ToHaveCSSAsync()元素具有 CSS 属性
Expect(Locator).ToHaveIdAsync()元素具有 ID
Expect(Locator).ToHaveJSPropertyAsync()元素具有 JavaScript 属性
Expect(Locator).ToHaveRoleAsync()元素具有特定的 ARIA 角色
Expect(Locator).ToHaveTextAsync()元素匹配文本
Expect(Locator).ToHaveValueAsync()输入框具有值
Expect(Locator).ToHaveValuesAsync()选择框已选择选项
Expect(Page).ToHaveTitleAsync()页面具有标题
Expect(Page).ToHaveURLAsync()页面具有 URL
Expect(Response).ToBeOKAsync()响应具有 OK 状态

设置自定义超时时间

您可以全局或针对每个断言指定自定义超时时间。默认超时时间为 5 秒。

全局超时时间

UnitTest1.cs
using Microsoft.Playwright;
using Microsoft.Playwright.MSTest;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace PlaywrightTests;

[TestClass]
public class UnitTest1 : PageTest
{
[ClassInitialize]
public static void GlobalSetup(TestContext context)
{
SetDefaultExpectTimeout(10_000);
}
// ...
}

每个断言的超时时间

UnitTest1.cs
await Expect(Page.GetByText("Name")).ToBeVisibleAsync(new() { Timeout = 10_000 });