Skip to main content

断言

断言列表

¥List of assertions

断言描述
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()元素具有类属性
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

设置自定义超时

¥Setting a custom timeout

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

¥You can specify a custom timeout for assertions either globally or per assertion. The default timeout is 5 seconds.

全局超时

¥Global timeout

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);
}
// ...
}

每个断言超时

¥Per assertion timeout

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