Saltar al contenido principal

Servicio LambdaTest

wdio-lambdatest-service es un paquete de terceros, para más información consulte GitHub | npm

WDIO health check

Un servicio de WebdriverIO que gestiona el túnel y los metadatos de trabajos para usuarios de LambdaTest.

Instalación​

npm i wdio-lambdatest-service --save-dev

Las instrucciones sobre cómo instalar WebdriverIO se pueden encontrar aquí.

Configuración​

WebdriverIO tiene soporte para LambdaTest incorporado. Simplemente debes establecer user y key en tu archivo wdio.conf.js. Para habilitar la función para automatización de aplicaciones, establece product: 'appAutomation' en tu archivo wdio.conf.js. Este plugin de servicio proporciona soporte para LambdaTest Tunnel. Establece también tunnel: true para activar esta característica.

// wdio.conf.js
exports.config = {
// ...
user: process.env.LT_USERNAME,
key: process.env.LT_ACCESS_KEY,
logFile : './logDir/api.log',
product : 'appAutomation',
services: [
['lambdatest', {
tunnel: true
}]
],
// ...
};

Para obtener observaciones de errores de prueba en el panel de automatización​

Para obtener observaciones de errores de prueba en el panel de automatización, simplemente añade ltErrorRemark: true en tu wdio.conf.js.

Para cargar aplicaciones desde local o URL​

Sube aplicaciones android o ios desde local o desde URL de aplicación alojada agregando esta configuración requerida en tu wdio.conf.js. Para usar la aplicación cargada para pruebas en la misma ejecución, establece enableCapability = true, esto establecerá el valor de la URL de la aplicación en las capacidades.

// wdio.conf.js
services: [
[
"lambdatest",
{
tunnel: true,
app_upload: true,
app:{
app_name : "xyz", //proporciona el nombre deseado para tu aplicación
app_path : "/path/to/your/app/file", //proporciona la ubicación local de la aplicación
// o
app_url : "https://example.test_android.apk", //proporciona la URL donde está alojada o almacenada tu aplicación
custom_id : "12345", //proporciona tu ID personalizado deseado
enableCapability : true
}
}
]
]

Opciones​

Para autorizarse en el servicio LambdaTest, tu configuración debe contener las opciones user y key.

tunnel​

Establece esto como true para habilitar el enrutamiento de conexiones desde la nube de LambdaTest a través de tu computadora. También necesitarás establecer tunnel como true en las capacidades del navegador.

Tipo: Boolean
Predeterminado: false

lambdatestOpts​

Las opciones específicas especificadas se transmitirán a LambdaTest Tunnel.

Tipo: Object
Predeterminado: {}

A continuación se muestra una lista completa de todas las opciones disponibles:

tunnelName​

Especifica el nombre personalizado del túnel LambdaTest que se utilizará.

Ejemplo:

{"tunnelName": "my_custom_tunnel"}

port​

Puerto para activar LambdaTest Tunnel.

Ejemplo:

{"port": 33000}

user​

Nombre de usuario de LambdaTest.

Ejemplo:

{"user": "your_username"}

key​

Clave de acceso de LambdaTest.

Ejemplo:

{"key": "your_access_key"}

verbose​

¿Debe registrarse cada solicitud de proxy en stdout?

Ejemplo:

{"verbose": true}

logFile​

Ubicación del archivo de registro de LambdaTest Tunnel.

Ejemplo:

{"logFile": "/path/to/log/file"}

config​

Ruta del archivo de configuración a utilizar. Ejemplo:

{"config": "/path/to/config/file"}

dir​

Especifica el directorio local que será servido por un servidor de archivos en el puerto del túnel.

Ejemplo:

{"dir": "/path/to/local/directory"}

proxyHost​

Especifica el nombre de host del puerto proxy del túnel.

Ejemplo:

{"proxyHost": "proxy.example.com"}

proxyUser​

Especifica el nombre de usuario del puerto proxy del túnel.

Ejemplo:

{"proxyUser": "your_proxy_username"}

proxyPass​

Especifica la contraseña del puerto proxy del túnel.

Ejemplo:

{"proxyPass": "your_proxy_password"}

proxyPort​

Especifica el número de puerto donde se activará el proxy del túnel.

Ejemplo:

{"proxyPort": 8080}

egressOnly​

Usa la configuración de proxy solo para solicitudes salientes.

Ejemplo:

{"egressOnly": true}

ingressOnly​

Enruta solo el tráfico entrante a través del proxy especificado.

Ejemplo:

{"ingressOnly": true}

pacfile​

Para usar PAC (Proxy Auto-Configuration) en pruebas locales, proporciona la ruta de un archivo PAC.

Ejemplo:

{"pacfile": "/path/to/pacfile"}

loadBalanced​

Activa el Balanceo de Carga para LambdaTest Tunnel.

Ejemplo:

{"loadBalanced": true}

mode​

Especifica en qué modo debe ejecutarse el túnel "ssh" o "ws". (predeterminado "ssh").

Ejemplo:

{"mode": "ssh"}

sshConnType​

Especifica el tipo de conexión ssh (over_22, over_443, over_ws). Para usar –sshConnType, especifica primero la bandera ––mode ssh.

Ejemplo:

{"sshConnType": "over_22"}

maxSSHConnections​

Aumenta la conexión SSH desde el Cliente del Túnel al Servidor del Túnel. El valor máximo permitido es 30.

Ejemplo:

{"maxSSHConnections": 2}

sharedTunnel​

Compartir túnel entre miembros del equipo.

Ejemplo:

{"sharedTunnel": true}

env​

El entorno en el que se ejecutará LambdaTest Tunnel.

Ejemplo:

{"env": "production"}

infoAPIPort​

Expone Tunnel Info API en el puerto especificado.

Ejemplo:

{"infoAPIPort": 8080}

callbackURL​

URL de devolución de llamada para el estado del túnel.

Ejemplo:

{"callbackURL": "https://example.com/callback"}

allowHosts​

Lista separada por comas de hosts para enrutar a través del túnel. Todo lo demás se enrutará a través de Internet.

Ejemplo:

{"allowHosts": "example.com,anotherexample.com"}

bypassHosts​

Lista separada por comas de hosts para omitir del túnel. Estos se enrutarán a través de Internet.

Ejemplo:

{"bypassHosts": "example.com,anotherexample.com"}

clientCert​

Ruta del archivo del Certificado de Cliente mTLS.

Ejemplo:

{"clientCert": "/path/to/client_certificate"}

clientKey​

Ruta del archivo de la Clave de Cliente mTLS.

Ejemplo:

{"clientKey": "/path/to/client_key"}

mTLSHosts​

Lista separada por comas de hosts mTLS.

Ejemplo:

{"mTLSHosts": "example.com,anotherexample.com"}

dns​

Lista separada por comas de Servidores DNS.

Ejemplo:

{"dns": "8.8.8.8,8.8.4.4"}

mitm​

Habilitar el modo MITM (Man-in-the-middle) para LambdaTest Tunnel.

Ejemplo:

{"mitm": true}

ntlm​

Para utilizar la autenticación Microsoft NTLM (Windows NT LAN Manager) para fines de comunicación o transporte.

Ejemplo:

{"ntlm": true}

pidfile​

Ruta del archivo pid, donde se escribirá el ID del proceso.

Ejemplo:

{"pidfile": "/path/to/pidfile"}

usePrivateIp​

Establece la dirección remota a una IP interna de la máquina cliente.

Ejemplo:

{"usePrivateIp": true}

Puedes encontrar más información sobre estas opciones aquí.

preferScenarioName​

Solo para Cucumber. Establece el nombre de la sesión al nombre del Escenario si solo se ejecutó un único Escenario. Útil cuando se ejecuta en paralelo con wdio-cucumber-parallel-execution.

Tipo: Boolean
Predeterminado: false

sessionNameFormat​

Personaliza el formato del nombre de la sesión.

Tipo: Function
Predeterminado (Cucumber/Jasmine): (config, capabilities, suiteTitle) => suiteTitle
Predeterminado (Mocha): (config, capabilities, suiteTitle, testTitle) => suiteTitle + ' - ' + testTitle

sessionNameOmitTestTitle​

Solo para Mocha. No añade el título de la prueba al nombre de la sesión.

Tipo: Boolean
Predeterminado: false

sessionNamePrependTopLevelSuiteTitle​

Solo para Mocha. Antepone el título del suite de nivel superior al nombre de la sesión.

Tipo: Boolean
Predeterminado: false

setSessionName​

Establece automáticamente el nombre de la sesión.

Tipo: Boolean
Predeterminado: true

setSessionStatus​

Establece automáticamente el estado de la sesión (aprobado/fallido).

Tipo: Boolean
Predeterminado: true

ignoreTestCountInName​

Ignora el recuento de reintentos de una prueba en el nombre

Tipo: Boolean
Predeterminado: false

useScenarioName​

Para obtener nombres de pruebas como nombres de escenarios para pruebas específicas de cucumber, simplemente añade useScenarioName: true en tu wdio.conf.js.

Pasos para compilar y publicar​

  1. git clone este repositorio.
  2. ejecuta "npm install"
  3. ejecuta "npm run build"
  4. Pasos para publicar: ejecuta "npm login"
  5. ejecuta "npm publish --access public"

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

Welcome! How can I help?

WebdriverIO AI Copilot