Тестування компонентів
За допомогою Browser Runner WebdriverIO ви можете запускати тести в реальному десктопному або мобільному браузері, використовуючи WebdriverIO та протокол WebDriver для автоматизації та взаємодії з тим, що відображається на сторінці. Цей підхід має багато переваг порівняно з іншими фреймворками тестування, які дозволяють тестувати лише проти JSDOM.
Як це працює?
Browser Runner використовує Vite для відображення тестової сторінки та ініціалізації фреймворку тестування для запуску ваших тестів у браузері. Наразі він підтримує лише Mocha, але Jasmine та Cucumber є у планах розвитку. Це дозволяє тестувати будь-які компоненти, навіть для проєктів, які не використовують Vite.
Сервер Vite запускається тестраннером WebdriverIO і налаштований так, щоб ви могли використовувати всі репортери та сервіси, як ви звикли для звичайних e2e тестів. Крім того, він ініціалізує екземпляр browser
, який дає вам доступ до підмножини WebdriverIO API для взаємодії з будь-якими елементами на сторінці. Подібно до e2e тестів, ви можете отримати доступ до цього екземпляра через змінну browser
, прикріплену до глобальної області видимості, або імпортуючи її з @wdio/globals
, залежно від налаштування injectGlobals
.
WebdriverIO має вбудовану підтримку наступних фреймворків:
- Nuxt: Тестраннер WebdriverIO виявляє додаток Nuxt і автоматично налаштовує composables вашого проєкту та допомагає мокувати бекенд Nuxt, детальніше у документації Nuxt
- TailwindCSS: Тестраннер WebdriverIO виявляє, чи використовуєте ви TailwindCSS, і належним чином завантажує середовище на тестову сторінку