PlaywrightAssertions
Playwright は、期待される条件が満たされるまで待機して再試行するアサーションを作成するための便利なメソッドを備えた、Web ファーストのアサーションを提供します。
以下の例を考えてみましょう
using Microsoft.Playwright;
using Microsoft.Playwright.MSTest;
namespace PlaywrightTests;
[TestClass]
public class ExampleTests : PageTest
{
[TestMethod]
public async Task StatusBecomesSubmitted()
{
await Page.GetByRole(AriaRole.Button, new() { Name = "Submit" }).ClickAsync();
await Expect(Page.Locator(".status")).ToHaveTextAsync("Submitted");
}
}
Playwright は、フェッチされた Node が .status
セレクターを持つノードに "Submitted"
テキストが含まれるまで、再テストを繰り返します。条件が満たされるか、タイムアウトになるまで、ノードのフェッチとチェックを何度も繰り返します。このタイムアウトはオプションとして渡すことができます。
デフォルトでは、アサーションのタイムアウトは 5 秒に設定されています。
メソッド
Expect(response)
追加バージョン: v1.18指定された APIResponse のための APIResponseAssertions オブジェクトを作成します。
使用方法
引数
-
response
APIResponse#アサーションに使用する APIResponse オブジェクト。
戻り値
Expect(locator)
追加バージョン: v1.18指定された Locator のための LocatorAssertions オブジェクトを作成します。
使用方法
await Expect(locator).ToBeVisibleAsync();
引数
戻り値
Expect(page)
追加バージョン: v1.18指定された Page のための PageAssertions オブジェクトを作成します。
使用方法
await Expect(Page).ToHaveTitleAsync("News");
引数
戻り値