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

Сервіс 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