Project

General

Profile

Actions

action #163946

closed

coordination #163919: [epic] Create automation setup for testing Agama

Integrate Puppeteer script with the Page Object Model (POM)

Added by JERiveraMoya 5 months ago. Updated about 2 months ago.

Status:
Resolved
Priority:
High
Assignee:
Target version:
-
Start date:
2024-07-15
Due date:
% Done:

0%

Estimated time:

Description

Motivation

For reusability and maintenability, but refers to refresh best practice regarding this design pattern https://ray.run/blog/mastering-poms for an example with Playwright.

Acceptance criteria

  • AC1: Break down the current script to use POM with Puppeteer in TypeScript.

Additional information

Starting point https://github.com/jknphy/agama-puppeteer/blob/main/tests/test_install.ts

Puppeteer doesn't offer specific documentation for POM, but you can check out the one for Playwright: https://playwright.dev/docs/pom
It will be needed somehow to export the new classes created for POM in similar fashion and establish our locators as properties of those classes, refers to https://www.typescriptlang.org/docs/ for finding the correct syntax in TypeScript.
Check out this presentation from QE Yam Workshop 2024 to avoid the use of inheritance with POMs, but I guess at this point we don't need composition.


Files

Bildschirmfoto_2024-08-30_10-36-26.png (79.1 KB) Bildschirmfoto_2024-08-30_10-36-26.png Screenshot of "Users" dialog rainerkoenig, 2024-08-30 08:57

Related issues 1 (0 open1 closed)

Related to qe-yam - action #163952: Run simple script to control an interactive installationResolvedjfernandez2024-07-15

Actions
Actions

Also available in: Atom PDF