docs(dotnet): POM snippets (#7878)

This commit is contained in:
Anže Vodovnik 2021-07-28 14:55:15 +02:00 committed by GitHub
parent bd1549075d
commit be75291b1e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -94,6 +94,35 @@ class SearchPage:
self.page.press('[aria-label="Enter your search term"]', "Enter")
```
```csharp
using System.Threading.Tasks;
using Microsoft.Playwright;
namespace BigEcommerceApp.Tests.Models
{
public class SearchPage
{
private readonly IPage _page;
public SearchPage(IPage page)
{
_page = page;
}
public async Task Goto()
{
await _page.GotoAsync("https://bing.com");
}
public async Task Search(string text)
{
await _page.FillAsync("[aria-label='Enter your search term']", text);
await _page.PressAsync("[aria-label='Enter your search term']", "Enter");
}
}
}
```
Page objects can then be used inside a test.
```js
@ -141,5 +170,14 @@ search_page.navigate()
search_page.search("search query")
```
```csharp
using BigEcommerceApp.Tests.Models;
// in the test
var page = new SearchPage(await browser.NewPageAsync());
await page.Goto();
await page.Search("search query");
```
### API reference
- [Page]