Saltar al contenido principal

Servicio de Gmail

wdio-gmail-service es un paquete de terceros, para más información por favor consulta GitHub | npm

Un plugin de WebdriverIO para obtener correos electrónicos de Google Mail usando Gmail Tester.

Instalación

La forma más sencilla es mantener wdio-gmail-service como una devDependency en tu package.json.

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

Puedes hacerlo simplemente con:

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

Uso

Autenticación de Gmail

Necesitarás seguir las instrucciones en Gmail Tester para crear el credentials.json (el archivo de autenticación OAuth2) y token.json (el token OAuth2).

Configuración

Añade el servicio agregando gmail a la lista de servicios, por ejemplo:

// 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
}]]
// ...
};

Opciones del Servicio

credentialsJsonPath

Ruta absoluta a un archivo JSON de credenciales.

Type: string

Required: true

tokenJsonPath

Ruta absoluta a un archivo JSON de token.

Type: string

Required: true

intervalSec

El intervalo entre las comprobaciones de la bandeja de entrada de Gmail.

Type: number

Default: 10

Required: false

timeoutSec

El tiempo máximo de espera para encontrar el correo electrónico con los filtros dados.

Type: number

Default: 60

Required: false

Escribiendo pruebas

En tu prueba de WebdriverIO, ahora puedes comprobar si se recibió un correo electrónico.

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=')
})
})

Parámetros de checkInbox

Los parámetros del comando requieren al menos uno de from, to o subject:

from

Filtrar por la dirección de correo electrónico del remitente.

Type: String

to

Filtrar por la dirección de correo electrónico del destinatario.

Type: String

subject

Filtrar por el asunto del correo electrónico.

Type: String

includeBody

Establecer a true para obtener los cuerpos de correo electrónico decodificados.

Type: boolean

includeAttachments

Establecer a true para obtener los archivos adjuntos de correo electrónico codificados en base64.

Type: boolean

before

Filtrar mensajes recibidos antes de la fecha especificada.

Type: Date

after

Filtrar mensajes recibidos después de la fecha especificada.

Type: Date

label

La etiqueta predeterminada es 'INBOX', pero puede cambiarse a 'SPAM', 'TRASH' o una etiqueta personalizada. Para una lista completa de etiquetas integradas, consulta https://developers.google.com/gmail/api/guides/labels?hl=en

Type: String


Para más información sobre WebdriverIO, consulta la página principal.

Welcome! How can I help?

WebdriverIO AI Copilot