Код IT
← Каталог

Playwright — Page Component

Фрагмент из «Playwright»: Page Component.

typescript projectencyclopedia7-05-testirovanie-1182 embed URL статья в энциклопедии
TypeScript main.ts
// components/HeaderComponent.ts

import { Page, Locator } from '@playwright/test';

export class HeaderComponent {
  readonly cartLink: Locator;

  constructor(private page: Page) {
    this.cartLink = page.getByTestId('header-cart');
  }

  async openCart() {
    await this.cartLink.click();
  }
}

// pages/CatalogPage.ts
export class CatalogPage {
  readonly header: HeaderComponent;

  constructor(page: Page) {
    this.header = new HeaderComponent(page);
  }
}
// components/HeaderComponent.ts

import { Page, Locator } from '@playwright/test';

export class HeaderComponent {
  readonly cartLink: Locator;

  constructor(private page: Page) {
    this.cartLink = page.getByTestId('header-cart');
  }

  async openCart() {
    await this.cartLink.click();
  }
}

// pages/CatalogPage.ts
export class CatalogPage {
  readonly header: HeaderComponent;

  constructor(page: Page) {
    this.header = new HeaderComponent(page);
  }
}