Skip to main content

斷言

斷言列表

斷言描述
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).ToContainClassAsync()元素具有指定的 CSS 類別
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(Locator).ToMatchAriaSnapshotAsync()元素匹配提供的 Aria 快照
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 });