Інтерв’юер: Розкажіть про свій досвід роботи з Playwright. Які завдання ви вирішували, використовуючи цей інструмент?
Кандидат: Я використовував Playwright для автоматизації end-to-end тестів веб-застосунків на C#. Основна робота полягала у тестуванні користувацьких інтерфейсів — форм, кнопок, посилань, навігації. Я налаштовував тести для різних браузерів: Chromium, Firefox та WebKit. Також застосовував Page Object Model для підтримуваної та чистої структури тестів.
Інтерв’юер: Як ви організовуєте структуру тестів із використанням Page Object Model? Чому POM важливий?
Кандидат: У POM кожна сторінка або компонент представлена окремим класом з локаторами та методами дій. Це зменшує дублювання коду та спрощує підтримку. Тести використовують методи класу, а не взаємодіють напряму з селекторами.
Інтерв’юер: Як ви обробляєте асинхронні операції в тестах Playwright?
Кандидат: У Playwright більшість дій асинхронні, тому використовується async/await для очікування завершення операцій.
Інтерв’юер: Як зробити тести більш надійними та стійкими до змін у UI?
Кандидат:
Використовувати стабільні селектори, наприклад data-testid.
Очікувати елемент у потрібному стані (Visible, Enabled).
Перехоплювати мережеві запити для перевірки коректності API.
Розділяти тести на маленькі, незалежні сценарії.
Інтерв’юер: Чи доводилось вам тестувати мобільні веб-застосунки?
Кандидат: Так, Playwright дозволяє емуляцію мобільних пристроїв, перевіряючи адаптивність та поведінку UI на різних екранах.
Інтерв’юер: Як ви виконуєте тестування API за допомогою Playwright?
Кандидат: Playwright підтримує API-запити без відкриття сторінки, що зручно для перевірки бекенду та інтеграції фронтенду з API.