Python мануфактураJavaDesign Patterns для автоматизаторів

Design Patterns для автоматизаторів · 1:29:05–1:40:50

Loadable Component проти flaky UI-тестів

Після кожної дії потрібно підтверджувати її наслідок на поточній сторінці, а перед роботою з новою сторінкою чи компонентою — чекати, що вони готові. Це важливо для асинхронного UI: картка може вже відображатися, але stock або delivery methods ще завантажуються, тому ранній клік `addToCart` не дасть очікуваного результату. Спільний інтерфейс `Loadable` з методом `isLoaded` робить цю вимогу явною для pages і components без великого base class. `isLoaded` може містити кілька очікувань: видимість title, image, кнопки й залежних даних. Автор дозволяє такі очікування в Page Object, бо вони визначають готовність системи до наступної дії, і пропонує перевіряти на code review, що новий компонент реалізує контракт завантаження.

1. Патерни проєктування для UI тестів (перезапис) →
Запитати в чаті про «loadable-component» →