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

Сервіс Gmail

wdio-gmail-service це сторонній пакет, для більш детальної інформації перегляньте GitHub | npm

Плагін WebdriverIO для отримання електронних листів з Google Mail за допомогою Gmail Tester.

Встановлення​

Найпростіший спосіб — зберегти wdio-gmail-service як devDependency у вашому package.json.

{
"devDependencies": {
"wdio-gmail-service": "^2.0.0"
}
}

Ви можете просто зробити це за допомогою:

npm install wdio-gmail-service --save-dev

Використання​

Аутентифікація Gmail​

Вам потрібно буде слідувати інструкціям на Gmail Tester, щоб створити credentials.json (файл аутентифікації OAuth2) та token.json (токен OAuth2).

Конфігурація​

Додайте сервіс, додавши gmail до списку сервісів, наприклад:

// wdio.conf.js
import path from 'path'

export const config = {
// ...
services: [['gmail', {
credentialsJsonPath: path.join(process.cwd(), './credentials.json'),
tokenJsonPath: join(process.cwd(), './token.json'),
intervalSec: 10,
timeoutSec: 60
}]]
// ...
};

Опції сервісу​

credentialsJsonPath​

Абсолютний шлях до файлу JSON з обліковими даними.

Тип: string

Обов'язково: true

tokenJsonPath​

Абсолютний шлях до файлу JSON з токеном.

Тип: string

Обов'язково: true

intervalSec​

Інтервал між перевірками поштової скриньки Gmail.

Тип: number

За замовчуванням: 10

Обов'язково: false

timeoutSec​

Максимальний час очікування для пошуку електронного листа за заданими фільтрами.

Тип: number

За замовчуванням: 60

Обов'язково: false

Написання тестів​

У вашому тесті WebdriverIO тепер ви можете перевірити, чи було отримано електронний лист.

describe('Example', () => {
it('Should check email', () => {
// perform some actions that will send an email to setup gmail account
const emails = await browser.checkInbox({ from: 'AccountSupport@ubi.com', subject: 'Ubisoft Password Change Request' });
expect(emails[0].body.html).toContain('https://account-uplay.ubi.com/en-GB/action/change-password?genomeid=')
})
})

Параметри checkInbox​

Параметри команди вимагають щонайменше один з: from, to або subject:

from​

Фільтр за адресою електронної пошти відправника.

Тип: String

to​

Фільтр за адресою електронної пошти отримувача.

Тип: String

subject​

Фільтр за темою електронного листа.

Тип: String

includeBody​

Встановіть значення true, щоб отримати декодовані тексти електронних листів.

Тип: boolean

includeAttachments​

Встановіть значення true, щоб отримати вкладення електронних листів, закодовані в base64.

Тип: boolean

before​

Фільтрувати повідомлення, отримані до вказаної дати.

Тип: Date

after​

Фільтрувати повідомлення, отримані після вказаної дати.

Тип: Date

label​

Мітка за замовчуванням — 'INBOX', але її можна змінити на 'SPAM', 'TRASH' або власну мітку. Для повного списку вбудованих міток див. https://developers.google.com/gmail/api/guides/labels?hl=en

Тип: String


Для отримання додаткової інформації про WebdriverIO перегляньте домашню сторінку.

Welcome! How can I help?

WebdriverIO AI Copilot