Перейти до основного вмісту

Electron

Electron - це фреймворк для створення настільних додатків за допомогою JavaScript, HTML і CSS. Вбудовуючи Chromium і Node.js у свій бінарний файл, Electron дозволяє підтримувати одну кодову базу JavaScript і створювати кросплатформні додатки, які працюють на Windows, macOS і Linux — без необхідності володіння навичками нативної розробки.

WebdriverIO надає інтегрований сервіс, який спрощує взаємодію з вашим Electron додатком і робить його тестування дуже простим. Переваги використання WebdriverIO для тестування Electron додатків:

  • 🚗 автоматичне налаштування необхідного Chromedriver
  • 📦 автоматичне виявлення шляху до вашого Electron додатку - підтримує Electron Forge та Electron Builder
  • 🧩 доступ до Electron API у ваших тестах
  • 🕵️ мокінг Electron API через API, подібний до Vitest

Вам потрібно лише кілька простих кроків, щоб почати. Подивіться просте покрокове відео для початківців з каналу WebdriverIO YouTube:

Або слідуйте інструкціям у наступному розділі.

Початок роботи​

Щоб ініціювати новий проект WebdriverIO, виконайте:

npm create wdio@latest ./

Майстер встановлення проведе вас через цей процес. Переконайтеся, що ви вибрали "Desktop Testing - of Electron Applications", коли вас запитають, який тип тестування ви хочете виконувати. Після цього вкажіть шлях до вашого скомпільованого Electron додатку, наприклад, ./dist, потім просто залиште налаштування за замовчуванням або змініть відповідно до ваших уподобань.

Майстер налаштування встановить усі необхідні пакети та створить wdio.conf.js або wdio.conf.ts з необхідною конфігурацією для тестування вашого додатку. Якщо ви погодитеся на автоматичне створення тестових файлів, ви зможете запустити свій перший тест за допомогою npm run wdio.

Ручне налаштування​

Якщо ви вже використовуєте WebdriverIO у своєму проекті, ви можете пропустити майстер встановлення і просто додати наступні залежності:

npm install --save-dev wdio-electron-service

Потім ви можете використовувати наступну конфігурацію:

// wdio.conf.ts
export const config: WebdriverIO.Config = {
// ...
services: [['electron', {
appEntryPoint: './path/to/bundled/electron/main.bundle.js',
appArgs: [/** ... */],
}]]
}

Ось і все 🎉

Дізнайтеся більше про те, як налаштувати Electron Service, як мокати Electron API і як отримати доступ до Electron API.

Welcome! How can I help?

WebdriverIO AI Copilot