Vai al contenuto principale

Servizio LambdaTest

wdio-lambdatest-service è un pacchetto di terze parti, per maggiori informazioni consultare GitHub | npm

WDIO health check

Un servizio WebdriverIO che gestisce tunnel e metadati dei job per gli utenti LambdaTest.

Installazione​

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

Le istruzioni su come installare WebdriverIO possono essere trovate qui.

Configurazione​

WebdriverIO ha il supporto per LambdaTest integrato. Devi semplicemente impostare user e key nel tuo file wdio.conf.js. Per abilitare la funzionalità per l'automazione delle app, imposta product: 'appAutomation' nel tuo file wdio.conf.js. Questo plugin di servizio fornisce supporto per LambdaTest Tunnel. Imposta anche tunnel: true per attivare questa funzionalità.

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

Per ottenere i commenti sugli errori dei test nella dashboard di automazione​

Per ottenere i commenti sugli errori dei test nella dashboard di automazione, aggiungi semplicemente ltErrorRemark: true nel tuo wdio.conf.js.

Per caricare app da locale o URL​

Carica app android o ios da locale o da URL host dell'app aggiungendo questa configurazione richiesta nel tuo wdio.conf.js. Per utilizzare l'app caricata per i test nella stessa esecuzione, imposta enableCapability = true, questo imposterà il valore dell'URL dell'app nelle capabilities.

// wdio.conf.js
services: [
[
"lambdatest",
{
tunnel: true,
app_upload: true,
app:{
app_name : "xyz", //fornisci il nome desiderato per la tua app
app_path : "/path/to/your/app/file", //fornisci la posizione locale dell'app
// oppure
app_url : "https://example.test_android.apk", //fornisci l'URL dove la tua app è ospitata o memorizzata
custom_id : "12345", //fornisci il tuo ID personalizzato desiderato
enableCapability : true
}
}
]
]

Opzioni​

Per autorizzare il servizio LambdaTest, la tua configurazione deve contenere le opzioni user e key.

tunnel​

Imposta questo a true per abilitare l'instradamento delle connessioni dal cloud LambdaTest attraverso il tuo computer. Dovrai anche impostare tunnel su true nelle capabilities del browser.

Tipo: Boolean
Predefinito: false

lambdatestOpts​

Le opzioni specificate saranno passate a LambdaTest Tunnel.

Tipo: Object
Predefinito: {}

Di seguito è riportato un elenco completo di tutte le opzioni disponibili:

tunnelName​

Specifica il nome personalizzato di LambdaTest Tunnel da utilizzare.

Esempio:

{"tunnelName": "my_custom_tunnel"}

port​

Porta per attivare LambdaTest Tunnel.

Esempio:

{"port": 33000}

user​

Nome utente LambdaTest.

Esempio:

{"user": "your_username"}

key​

AccessKey LambdaTest.

Esempio:

{"key": "your_access_key"}

verbose​

Ogni richiesta proxy deve essere registrata su stdout.

Esempio:

{"verbose": true}

logFile​

Posizione del file di log di LambdaTest Tunnel.

Esempio:

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

config​

Percorso del file di configurazione da utilizzare. Esempio:

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

dir​

Specifica la directory locale che verrà servita da un file server sulla porta del Tunnel.

Esempio:

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

proxyHost​

Specifica il nome host della porta proxy del Tunnel.

Esempio:

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

proxyUser​

Specifica il nome utente della porta proxy del Tunnel.

Esempio:

{"proxyUser": "your_proxy_username"}

proxyPass​

Specifica la password della porta proxy del Tunnel.

Esempio:

{"proxyPass": "your_proxy_password"}

proxyPort​

Specifica il numero di porta dove verrà attivato il proxy del Tunnel.

Esempio:

{"proxyPort": 8080}

egressOnly​

Utilizza le impostazioni del proxy solo per le richieste in uscita.

Esempio:

{"egressOnly": true}

ingressOnly​

Instrada solo il traffico in entrata tramite il proxy specificato.

Esempio:

{"ingressOnly": true}

pacfile​

Per utilizzare PAC (Proxy Auto-Configuration) nei test locali, fornire il percorso di un file PAC.

Esempio:

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

loadBalanced​

Attiva il Bilanciamento del carico per LambdaTest Tunnel.

Esempio:

{"loadBalanced": true}

mode​

Specifica in quale modalità il tunnel dovrebbe funzionare "ssh" o "ws". (predefinito "ssh").

Esempio:

{"mode": "ssh"}

sshConnType​

Specifica il tipo di connessione ssh (over_22, over_443, over_ws). Per utilizzare –sshConnType, specifica prima il flag ––mode ssh.

Esempio:

{"sshConnType": "over_22"}

maxSSHConnections​

Aumenta la connessione SSH dal Client Tunnel al Server Tunnel. Il valore massimo consentito è 30.

Esempio:

{"maxSSHConnections": 2}

sharedTunnel​

Condivisione del Tunnel tra i membri del team.

Esempio:

{"sharedTunnel": true}

env​

L'ambiente su cui funzionerà LambdaTest Tunnel.

Esempio:

{"env": "production"}

infoAPIPort​

Espone Tunnel Info API sulla porta specificata.

Esempio:

{"infoAPIPort": 8080}

callbackURL​

URL di callback per lo stato del tunnel.

Esempio:

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

allowHosts​

Elenco separato da virgole di host da instradare attraverso il tunnel. Tutto il resto verrà instradato tramite Internet.

Esempio:

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

bypassHosts​

Elenco separato da virgole di host da bypassare dal tunnel. Questi saranno instradati tramite internet.

Esempio:

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

clientCert​

Percorso del file del certificato client mTLS.

Esempio:

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

clientKey​

Percorso del file della chiave client mTLS.

Esempio:

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

mTLSHosts​

Elenco separato da virgole di host mTLS.

Esempio:

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

dns​

Elenco separato da virgole di server DNS.

Esempio:

{"dns": "8.8.8.8,8.8.4.4"}

mitm​

Abilita la modalità MITM (Man-in-the-middle) per LambdaTest Tunnel.

Esempio:

{"mitm": true}

ntlm​

Per utilizzare l'autenticazione Microsoft NTLM (Windows NT LAN Manager) per la comunicazione o il trasporto.

Esempio:

{"ntlm": true}

pidfile​

Percorso del pidfile, dove verrà scritto l'ID del processo.

Esempio:

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

usePrivateIp​

Imposta l'indirizzo remoto a un IP interno della macchina client.

Esempio:

{"usePrivateIp": true}

Puoi trovare maggiori informazioni su queste opzioni qui.

preferScenarioName​

Solo per Cucumber. Imposta il nome della sessione al nome dello Scenario se viene eseguito un solo Scenario. Utile quando si esegue in parallelo con wdio-cucumber-parallel-execution.

Tipo: Boolean
Predefinito: false

sessionNameFormat​

Personalizza il formato del nome della sessione.

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

sessionNameOmitTestTitle​

Solo per Mocha. Non aggiungere il titolo del test al nome della sessione.

Tipo: Boolean
Predefinito: false

sessionNamePrependTopLevelSuiteTitle​

Solo per Mocha. Antepone il titolo della suite di livello superiore al nome della sessione.

Tipo: Boolean
Predefinito: false

setSessionName​

Imposta automaticamente il nome della sessione.

Tipo: Boolean
Predefinito: true

setSessionStatus​

Imposta automaticamente lo stato della sessione (passato/fallito).

Tipo: Boolean
Predefinito: true

ignoreTestCountInName​

Ignora il conteggio dei tentativi di un test nel nome

Tipo: Boolean
Predefinito: false

useScenarioName​

Per ottenere i nomi dei test come nomi di scenario per test specifici di cucumber, aggiungi semplicemente useScenarioName: true nel tuo wdio.conf.js.

Passaggi per compilare e pubblicare​

  1. clona questo repository git.
  2. esegui "npm install"
  3. esegui "npm run build"
  4. Passaggi per pubblicare: esegui "npm login"
  5. esegui "npm publish --access public"

Per ulteriori informazioni su WebdriverIO, consulta la homepage.

Welcome! How can I help?

WebdriverIO AI Copilot