PlaywrightAssertions
Playwrightは、期待される条件が満たされるまで待機して再試行するアサーションを作成するための便利なメソッドを備えたWeb-Firstアサーションを提供します。
次の例を考えてみましょう
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
public class TestExample {
// ...
@Test
void statusBecomesSubmitted() {
// ...
page.locator("#submit-button").click();
assertThat(page.locator(".status")).hasText("Submitted");
}
}
Playwrightは、フェッチされたNodeが"Submitted"
というテキストを持つまで、セレクター.status
を持つノードを再テストします。条件が満たされるか、タイムアウトに達するまで、ノードを再フェッチして何度もチェックし続けます。このタイムアウトはオプションとして渡すことができます。
デフォルトでは、アサーションのタイムアウトは5秒に設定されています。
メソッド
assertThat(response)
バージョン v1.18 で追加指定されたAPIResponseのAPIResponseAssertionsオブジェクトを作成します。
使用方法
PlaywrightAssertions.assertThat(response).isOK();
引数
-
response
APIResponse#アサーションに使用するAPIResponseオブジェクト。
戻り値
assertThat(locator)
バージョン v1.18 で追加指定されたLocatorのLocatorAssertionsオブジェクトを作成します。
使用方法
PlaywrightAssertions.assertThat(locator).isVisible();
引数
戻り値
assertThat(page)
バージョン v1.18 で追加指定されたPageのPageAssertionsオブジェクトを作成します。
使用方法
PlaywrightAssertions.assertThat(page).hasTitle("News");
引数
戻り値
setDefaultAssertionTimeout
バージョン v1.25 で追加Playwrightアサーションのデフォルトタイムアウトを5秒から指定された値に変更します。
使用方法
PlaywrightAssertions.setDefaultAssertionTimeout(30_000);
引数