Візуальне тестування
Що він може робити?
WebdriverIO забезпечує порівняння зображень на екранах, елементах або повної сторінки для
- 🖥️ Десктопних браузерів (Chrome / Firefox / Safari / Microsoft Edge)
- 📱 Мобільних / Планшетних браузерів (Chrome на Android емуляторах / Safari на iOS Симуляторах / Симуляторах / реальних пристроях) через Appium
- 📱 Нативних додатків (Android емулятори / iOS Симулятори / реальні пристрої) через Appium (🌟 НОВИНКА 🌟)
- 📳 Гібридних додатків через Appium
через @wdio/visual-service, який є легким сервісом WebdriverIO.
Це дозволяє вам:
- зберігати або порівнювати екрани/елементи/повносторінкові знімки з базовим зображенням
- автоматично створювати базове зображення, коли його немає
- блокувати власні області і навіть автоматично виключати рядок стану та/або панелі інструментів (лише для мобільних) під час порівняння
- збільшувати розміри знімків елементів
- приховувати текст під час порівняння веб-сайтів для:
- покращення стабільності та запобігання нестабільності відтворення шрифтів
- зосередження лише на макеті веб-сайту
- використовувати різні методи порівняння та набір додаткових зіставників для більш читабельних тестів
- перевіряти, як ваш веб-сайт підтримуватиме переміщення клавішею табуляції, дивіться також Переміщення по сайту за допомогою клавіші Tab
- і багато іншого, дивіться опції сервісу та методів
Сервіс є легким модулем для отримання необхідних даних та знімків екрана для всіх браузерів/пристроїв. Потужність порівняння забезпечується ResembleJS. Якщо ви хочете порівнювати зображення онлайн, ви можете перевірити онлайн-інструмент.
Методи saveScreen, saveElement, checkScreen, checkElement та зіставники toMatchScreenSnapshot і toMatchElementSnapshot можуть використовуватися для нативних додатків/контексту.
Будь ласка, використовуйте властивість isHybridApp:true у налаштуваннях сервісу, якщо ви хочете використовувати його для гібридних додатків.
Встановлення
Найпростіший спосіб — зберегти @wdio/visual-service як dev-залежність у вашому package.json, через:
npm install --save-dev @wdio/visual-service