PageAssertions
The PageAssertions class provides assertion methods that can be used to make assertions about the Page state in the tests.
using System.Text.RegularExpressions;
using Microsoft.Playwright;
using Microsoft.Playwright.MSTest;
namespace PlaywrightTests;
[TestClass]
public class ExampleTests : PageTest
{
[TestMethod]
public async Task NavigateToLoginPage()
{
await Page.GetByRole(AriaRole.Button, new() { Name = "Sign In" }).ClickAsync();
await Expect(Page).ToHaveURLAsync(new Regex(".*/login"));
}
}
方法 (Methods)
ToHaveTitleAsync
Added in: v1.20Ensures the page has the given title.
使用方式
await Expect(Page).ToHaveTitleAsync("Playwright");
參數
-
titleOrRegExp
string | Regex Added in: v1.18#Expected title or RegExp.
-
options
PageAssertionsToHaveTitleOptions?
(optional)-
Timeout
[float]? (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
-
傳回值
ToHaveURLAsync
Added in: v1.20Ensures the page is navigated to the given URL.
使用方式
await Expect(Page).ToHaveURLAsync(new Regex(".*checkout"));
參數
-
urlOrRegExp
string | Regex Added in: v1.18#Expected URL string or RegExp.
-
options
PageAssertionsToHaveURLOptions?
(optional)-
IgnoreCase
bool? (optional) Added in: v1.44#Whether to perform case-insensitive match. IgnoreCase option takes precedence over the corresponding regular expression parameter if specified. A provided predicate ignores this flag.
-
Timeout
[float]? (optional) Added in: v1.18#Time to retry the assertion for in milliseconds. Defaults to
5000
.
-
傳回值
屬性 (Properties)
Not
Added in: v1.20Makes the assertion check for the opposite condition. For example, this code tests that the page URL doesn't contain "error"
:
await Expect(Page).Not.ToHaveURLAsync("error");
使用方式
Expect(Page).Not
型別 (Type)