композиція - наступний рівень page object model playwright

В цьому відео ми покажемо і розкажемо як використовувати композицію в побудові Page Object Model класів. Це допоможе вам робити більш модульні і легкі у підтримці проекти автоматизації тестування з використанням POM патерну.
телеграм:
📎 t.me/qa_advice/31
00:00 Вступ
00:46 два способи побудови класів
02:08 що таке композиція
03:22 практика
07:00 правильні базові класи
10:27 декомпозиція
12:40 застосування композиції
16:43 переваги композиції
#playwright #qa #testautomation #testing #learning #програмування #тестуванняпз #тестування

Пікірлер: 10

  • @user-ex4wl2rx2u
    @user-ex4wl2rx2u9 ай бұрын

    Дяка, подумаю про рефакторінг існуючих PageObject...)

  • @user-rm1il7cx4q
    @user-rm1il7cx4q7 ай бұрын

    Дякую за працю. Дивлюся регулярно

  • @user-mq4rt6ti8f
    @user-mq4rt6ti8f8 ай бұрын

    Дякую, мастхев в переважній більшості проектів)

  • @user-gp5pm9tc4z
    @user-gp5pm9tc4z6 ай бұрын

    Буде відео про СІСД? пайплайни?

  • @qa_senpai

    @qa_senpai

    6 ай бұрын

    Можу зробити якось, але тема досить "інструментозалежна", а що конкретно саме вас цікавить?

  • @anonimanonim-mp9hx
    @anonimanonim-mp9hx6 ай бұрын

    привіт, а чи є лінк на гітхаб з прикладом, чи таке не практикується? 🙂 і дякую за відео!

  • @qa_senpai

    @qa_senpai

    6 ай бұрын

    вітаю, взагалі практикую і майже до кожного відоса де є якісь технічні моменти викладаю репозиторій в ТГ каналі, але для цього відоса не викладав бо тут 100% псевдокоду

  • @anonimanonim-mp9hx

    @anonimanonim-mp9hx

    6 ай бұрын

    зрозумів, дякую 🙂

  • @dimassdead2388
    @dimassdead23887 ай бұрын

    Всім привіт. Подивившись відео у мене виникло питання: як викликали локатор (або інші методи обєкту page) в класі компоненту якщо він не наслідує базовий клас і немає власного page object? У мене є лише одна ідея - додати page: Page поле в клас компоненту та очікувати його в конструкторі, але виглядає якось не дуже... Підскажіть будь ласка, як краще зробити

  • @qa_senpai

    @qa_senpai

    7 ай бұрын

    Вітаю :) Саме так і треба зробити. Ви будете ініціалізувати обʼєкт класу компонента разом з "головним" класом. В якості аргументу передаєте у конструктор обʼєкт page, а в середині конструктора використовуєте його для створення обʼєктів компонентів. Якщо компонентів багато і ви не хочете всі їх використовувати, спробуйте використати lazy створення (у відео все