Udemy Playwright: Web Automation Testing From Zero to Hero: Difference between revisions
Jump to navigation
Jump to search
Udemy Playwright: Web Automation Testing From Zero to Hero (view source)
Revision as of 01:18, 29 May 2024
, 29 May→First Page Object
m (→Intro) |
|||
Line 729: | Line 729: | ||
=== First Page Object === | === First Page Object === | ||
new file '''<code>page-objects\navigationPage.ts</code>''' | |||
<nowiki> | |||
import { Page } from "@playwright/test" | |||
export class NavigationPage { | |||
readonly page: Page | |||
constructor(page: Page) { | |||
this.page = page | |||
} | |||
async formLayoutsPage() { | |||
await this.page.getByText("Forms").click() | |||
await this.page.getByText("Form Layouts").click() | |||
} | |||
} | |||
</nowiki> | |||
new file '''<code>tests\usePageObjects.spec.ts</code>''' | |||
<nowiki> | |||
import { expect, test } from "@playwright/test" | |||
import { NavigationPage } from "../page-objects/navigationPage" | |||
test.beforeEach(async ({ page }, testInfo) => { | |||
await page.goto("http://localhost:4200/") | |||
}) | |||
test("navigate to form page", async ({ page }) => { | |||
const navigateTo = new NavigationPage(page) | |||
await navigateTo.formLayoutsPage() | |||
}) | |||
</nowiki> | |||
Notes | |||
I don't like a lot of the naming here, | |||
* navigationPage -> navigationMenu | |||
* formLayoutsPage -> clickFormLayouts | |||
* navigateTo -> navigationMenu | |||
=== Navigation Page Object === | === Navigation Page Object === | ||
=== Locators in Page Objects === | === Locators in Page Objects === |