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

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