PageAssertions
PageAssertions 类提供了多种断言方法,可用于在测试中对 Page(页面)状态进行断言。
// ...
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
public class TestPage {
// ...
@Test
void navigatesToLoginPage() {
// ...
page.getByText("Sign in").click();
assertThat(page).hasURL(Pattern.compile(".*/login"));
}
}
方法
hasTitle
新增于: v1.20确保页面具有给定的标题。
用法
assertThat(page).hasTitle("Playwright");
参数
返回
hasURL
新增于: v1.20确保页面已导航到给定的 URL。
用法
assertThat(page).hasURL(".com");
参数
-
urlOrRegExpString | Pattern新增于: v1.18#预期的 URL 字符串或正则表达式。
-
optionsPageAssertions.HasURLOptions(可选)-
setIgnoreCaseboolean (可选)新增于:v1.44#是否执行不区分大小写的匹配。如果指定了 setIgnoreCase 选项,则其优先级高于相应的正则表达式参数。提供的谓词会忽略此标志。
-
setTimeoutdouble (可选)新增于: v1.18#重试断言的时间,单位为毫秒。默认为
5000。
-
返回
matchesAriaSnapshot
添加于: v1.60断言页面正文与给定的 无障碍快照(accessibility snapshot) 相匹配。
用法
page.navigate("https://demo.playwright.dev/todomvc/");
assertThat(page).matchesAriaSnapshot("""
- heading "todos"
- textbox "What needs to be done?"
""");
参数
返回
属性
not()
新增于: v1.20使断言检查相反的条件。
用法
例如,以下代码测试页面 URL 不包含 "error"
assertThat(page).not().hasURL("error");
返回