Aller au contenu principal

Service LambdaTest

wdio-lambdatest-service est un package tiers, pour plus d'informations, voir GitHub | npm

WDIO health check

Un service WebdriverIO qui gère le tunnel et les métadonnées des tâches pour les utilisateurs de LambdaTest.

Installation​

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

Les instructions sur l'installation de WebdriverIO peuvent être trouvées ici.

Configuration​

WebdriverIO prend en charge LambdaTest nativement. Vous devez simplement définir user et key dans votre fichier wdio.conf.js. Pour activer la fonctionnalité pour l'automatisation d'applications, définissez product: 'appAutomation' dans votre fichier wdio.conf.js. Ce plugin de service prend en charge LambdaTest Tunnel. Définissez également tunnel: true pour activer cette fonctionnalité.

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

Pour obtenir des remarques sur les erreurs de test sur le tableau de bord d'automatisation​

Pour obtenir des remarques sur les erreurs de test sur le tableau de bord d'automatisation, ajoutez simplement ltErrorRemark: true dans votre wdio.conf.js.

Pour télécharger une application depuis un emplacement local ou une URL​

Téléchargez des applications android ou ios depuis un emplacement local ou une URL d'application hébergée en ajoutant cette configuration requise dans votre wdio.conf.js. Pour utiliser l'application téléchargée pour les tests dans la même exécution, définissez enableCapability = true, cela définira la valeur de l'URL de l'application dans les capacités.

// wdio.conf.js
services: [
[
"lambdatest",
{
tunnel: true,
app_upload: true,
app:{
app_name : "xyz", //provide your desired app name
app_path : "/path/to/your/app/file", //provide the local app location
// or
app_url : "https://example.test_android.apk", //provide the url where your app is horsted or stored
custom_id : "12345", //provide your desired custom id
enableCapability : true
}
}
]
]

Options​

Pour s'authentifier auprès du service LambdaTest, votre configuration doit contenir une option user et key.

tunnel​

Définissez-le sur true pour permettre aux connexions du cloud LambdaTest de passer par votre ordinateur. Vous devrez également définir tunnel sur true dans les capacités du navigateur.

Type: Boolean
Par défaut: false

lambdatestOpts​

Les options spécifiées seront transmises à LambdaTest Tunnel.

Type: Object
Par défaut: {}

Voici une liste complète de toutes les options disponibles :

tunnelName​

Spécifie le nom personnalisé du tunnel LambdaTest à utiliser.

Exemple:

{"tunnelName": "my_custom_tunnel"}

port​

Port pour activer LambdaTest Tunnel.

Exemple:

{"port": 33000}

user​

Nom d'utilisateur LambdaTest.

Exemple:

{"user": "your_username"}

key​

Clé d'accès LambdaTest.

Exemple:

{"key": "your_access_key"}

verbose​

Chaque demande de proxy doit-elle être enregistrée dans stdout.

Exemple:

{"verbose": true}

logFile​

Emplacement du fichier journal LambdaTest Tunnel.

Exemple:

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

config​

Chemin du fichier de configuration à utiliser. Exemple:

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

dir​

Spécifiez le répertoire local qui sera servi par un serveur de fichiers sur le port Tunnel.

Exemple:

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

proxyHost​

Spécifie le nom d'hôte du port proxy Tunnel.

Exemple:

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

proxyUser​

Spécifie le nom d'utilisateur du port proxy Tunnel.

Exemple:

{"proxyUser": "your_proxy_username"}

proxyPass​

Spécifie le mot de passe du port proxy Tunnel.

Exemple:

{"proxyPass": "your_proxy_password"}

proxyPort​

Spécifie le numéro de port où le proxy Tunnel s'activera.

Exemple:

{"proxyPort": 8080}

egressOnly​

Utilise les paramètres de proxy uniquement pour les requêtes sortantes.

Exemple:

{"egressOnly": true}

ingressOnly​

Route uniquement le trafic entrant via le proxy spécifié.

Exemple:

{"ingressOnly": true}

pacfile​

Pour utiliser PAC (Proxy Auto-Configuration) dans les tests locaux, fournissez le chemin d'un fichier PAC.

Exemple:

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

loadBalanced​

Active l'équilibrage de charge pour LambdaTest Tunnel.

Exemple:

{"loadBalanced": true}

mode​

Spécifie dans quel mode le tunnel doit fonctionner "ssh" ou "ws". (par défaut "ssh").

Exemple:

{"mode": "ssh"}

sshConnType​

Spécifiez le type de connexion ssh (over_22, over_443, over_ws). Pour utiliser –sshConnType, spécifiez d'abord le drapeau ––mode ssh.

Exemple:

{"sshConnType": "over_22"}

maxSSHConnections​

Augmente la connexion SSH du client Tunnel au serveur Tunnel. La valeur maximale autorisée est 30.

Exemple:

{"maxSSHConnections": 2}

sharedTunnel​

Partage du tunnel entre les membres de l'équipe.

Exemple:

{"sharedTunnel": true}

env​

L'environnement sur lequel le tunnel LambdaTest fonctionnera.

Exemple:

{"env": "production"}

infoAPIPort​

Expose l'API d'informations sur le tunnel sur le port spécifié.

Exemple:

{"infoAPIPort": 8080}

callbackURL​

URL de rappel pour l'état du tunnel.

Exemple:

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

allowHosts​

Liste séparée par des virgules des hôtes à acheminer via le tunnel. Tout le reste sera acheminé via Internet.

Exemple:

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

bypassHosts​

Liste séparée par des virgules des hôtes à contourner du tunnel. Ceux-ci seront acheminés via Internet.

Exemple:

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

clientCert​

Chemin du fichier de certificat client mTLS.

Exemple:

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

clientKey​

Chemin du fichier de clé client mTLS.

Exemple:

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

mTLSHosts​

Liste séparée par des virgules des hôtes mTLS.

Exemple:

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

dns​

Liste séparée par des virgules des serveurs DNS.

Exemple:

{"dns": "8.8.8.8,8.8.4.4"}

mitm​

Activer le mode MITM (Man-in-the-middle) pour LambdaTest Tunnel.

Exemple:

{"mitm": true}

ntlm​

Pour utiliser l'authentification Microsoft NTLM (Windows NT LAN Manager) à des fins de communication ou de transport.

Exemple:

{"ntlm": true}

pidfile​

Chemin du fichier pid, où l'ID du processus sera écrit.

Exemple:

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

usePrivateIp​

Définit l'adresse distante à une IP interne de la machine client.

Exemple:

{"usePrivateIp": true}

Vous pouvez en savoir plus sur ces options ici.

preferScenarioName​

Cucumber uniquement. Définit le nom de la session sur le nom du scénario si un seul scénario est exécuté. Utile lors de l'exécution en parallèle avec wdio-cucumber-parallel-execution.

Type: Boolean
Par défaut: false

sessionNameFormat​

Personnalisez le format du nom de la session.

Type: Function
Par défaut (Cucumber/Jasmine): (config, capabilities, suiteTitle) => suiteTitle
Par défaut (Mocha): (config, capabilities, suiteTitle, testTitle) => suiteTitle + ' - ' + testTitle

sessionNameOmitTestTitle​

Mocha uniquement. N'ajoutez pas le titre du test au nom de la session.

Type: Boolean
Par défaut: false

sessionNamePrependTopLevelSuiteTitle​

Mocha uniquement. Ajoutez le titre de la suite de niveau supérieur au nom de la session.

Type: Boolean
Par défaut: false

setSessionName​

Définit automatiquement le nom de la session.

Type: Boolean
Par défaut: true

setSessionStatus​

Définit automatiquement le statut de la session (réussi/échoué).

Type: Boolean
Par défaut: true

ignoreTestCountInName​

Ignorer le nombre de tentatives d'un test dans le nom

Type: Boolean
Par défaut: false

useScenarioName​

Pour obtenir des noms de tests en tant que noms de scénarios pour les tests spécifiques à Cucumber, ajoutez simplement useScenarioName: true dans votre wdio.conf.js.

Étapes pour compiler et publier​

  1. clonez ce dépôt git.
  2. exécutez "npm install"
  3. exécutez "npm run build"
  4. Étapes pour publier : exécutez "npm login"
  5. exécutez "npm publish --access public"

Pour plus d'informations sur WebdriverIO, consultez la page d'accueil.

Welcome! How can I help?

WebdriverIO AI Copilot