Zum Hauptinhalt springen

LambdaTest Service

wdio-lambdatest-service ist ein Paket von Drittanbietern, weitere Informationen finden Sie auf GitHub | npm

WDIO health check

Ein WebdriverIO-Service, der Tunnel und Job-Metadaten für LambdaTest-Benutzer verwaltet.

Installation​

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

Anweisungen zur Installation von WebdriverIO finden Sie hier.

Konfiguration​

WebdriverIO bietet standardmäßig LambdaTest-Unterstützung. Sie sollten einfach user und key in Ihrer wdio.conf.js Datei einstellen. Um die Funktion für App-Automatisierung zu aktivieren, setzen Sie product: 'appAutomation' in Ihrer wdio.conf.js Datei. Dieses Service-Plugin bietet Unterstützung für LambdaTest Tunnel. Setzen Sie auch tunnel: true, um diese Funktion zu aktivieren.

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

Um Testfehlerbemerkungen im Automatisierungs-Dashboard zu erhalten​

Um Testfehlerbemerkungen im Automatisierungs-Dashboard zu erhalten, fügen Sie einfach ltErrorRemark: true in Ihrer wdio.conf.js hinzu.

Um Apps von lokal oder URL hochzuladen​

Laden Sie android oder ios Apps von lokalen oder gehosteten App-URLs hoch, indem Sie diese erforderliche Konfiguration in Ihrer wdio.conf.js hinzufügen. Um die hochgeladene App gleichzeitig in demselben Durchlauf zum Testen zu verwenden, setzen Sie enableCapability = true, dadurch wird der App-URL-Wert in den Capabilities festgelegt.

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

Optionen​

Um sich beim LambdaTest-Service zu authentifizieren, muss Ihre Konfiguration die Optionen user und key enthalten.

tunnel​

Setzen Sie dies auf true, um die Weiterleitung von Verbindungen von der LambdaTest-Cloud durch Ihren Computer zu ermöglichen. Sie müssen auch tunnel in den Browser-Capabilities auf true setzen.

Typ: Boolean
Standard: false

lambdatestOpts​

Spezifizierte Optionen werden an LambdaTest Tunnel weitergegeben.

Typ: Object
Standard: {}

Nachfolgend finden Sie eine umfassende Liste aller verfügbaren Optionen:

tunnelName​

Gibt den benutzerdefinierten LambdaTest Tunnel-Namen an, der verwendet werden soll.

Beispiel:

{"tunnelName": "my_custom_tunnel"}

port​

Port, auf dem LambdaTest Tunnel aktiviert werden soll.

Beispiel:

{"port": 33000}

user​

LambdaTest Benutzername.

Beispiel:

{"user": "your_username"}

key​

LambdaTest Zugangsschlüssel.

Beispiel:

{"key": "your_access_key"}

verbose​

Soll jede Proxyanfrage in der Standardausgabe protokolliert werden.

Beispiel:

{"verbose": true}

logFile​

Ort der LambdaTest Tunnel-Protokolldatei.

Beispiel:

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

config​

Pfad der zu verwendenden Konfigurationsdatei. Beispiel:

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

dir​

Geben Sie das lokale Verzeichnis an, das von einem Dateiserver am Tunnel-Port bereitgestellt wird.

Beispiel:

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

proxyHost​

Gibt den Hostnamen des Tunnel-Proxy-Ports an.

Beispiel:

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

proxyUser​

Gibt den Benutzernamen des Tunnel-Proxy-Ports an.

Beispiel:

{"proxyUser": "your_proxy_username"}

proxyPass​

Gibt das Passwort des Tunnel-Proxy-Ports an.

Beispiel:

{"proxyPass": "your_proxy_password"}

proxyPort​

Gibt die Portnummer an, an der der Tunnel-Proxy aktiviert wird.

Beispiel:

{"proxyPort": 8080}

egressOnly​

Verwendet Proxy-Einstellungen nur für ausgehende Anfragen.

Beispiel:

{"egressOnly": true}

ingressOnly​

Leitet nur eingehenden Verkehr über den angegebenen Proxy.

Beispiel:

{"ingressOnly": true}

pacfile​

Um PAC (Proxy Auto-Configuration) beim lokalen Testen zu verwenden, geben Sie den Pfad einer PAC-Datei an.

Beispiel:

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

loadBalanced​

Aktiviert Load Balancing für LambdaTest Tunnel.

Beispiel:

{"loadBalanced": true}

mode​

Gibt an, in welchem Modus der Tunnel laufen soll: "ssh" oder "ws". (Standard "ssh").

Beispiel:

{"mode": "ssh"}

sshConnType​

Geben Sie den Typ der SSH-Verbindung an (over_22, over_443, over_ws). Um –sshConnType zu verwenden, geben Sie zuerst das Flag ––mode ssh an.

Beispiel:

{"sshConnType": "over_22"}

maxSSHConnections​

Erhöhen Sie die SSH-Verbindung vom Tunnel-Client zum Tunnel-Server. Der maximal zulässige Wert ist 30.

Beispiel:

{"maxSSHConnections": 2}

sharedTunnel​

Tunnel unter Teammitgliedern teilen.

Beispiel:

{"sharedTunnel": true}

env​

Die Umgebung, in der der LambdaTest Tunnel ausgeführt wird.

Beispiel:

{"env": "production"}

infoAPIPort​

Stellt Tunnel Info API am angegebenen Port zur Verfügung.

Beispiel:

{"infoAPIPort": 8080}

callbackURL​

Callback-URL für den Tunnel-Status.

Beispiel:

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

allowHosts​

Kommagetrennte Liste von Hosts, die über den Tunnel geleitet werden sollen. Alles andere wird über das Internet geleitet.

Beispiel:

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

bypassHosts​

Kommagetrennte Liste von Hosts, die vom Tunnel umgangen werden sollen. Diese werden über das Internet geleitet.

Beispiel:

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

clientCert​

mTLS Client-Zertifikat-Dateipfad.

Beispiel:

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

clientKey​

mTLS Client-Schlüssel-Dateipfad.

Beispiel:

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

mTLSHosts​

Kommagetrennte Liste von mTLS-Hosts.

Beispiel:

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

dns​

Kommagetrennte Liste von DNS-Servern.

Beispiel:

{"dns": "8.8.8.8,8.8.4.4"}

mitm​

Aktivieren Sie den MITM (Man-in-the-middle) Modus für LambdaTest Tunnel.

Beispiel:

{"mitm": true}

ntlm​

Um die Microsoft NTLM (Windows NT LAN Manager) Authentifizierung für Kommunikations- oder Transportzwecke zu verwenden.

Beispiel:

{"ntlm": true}

pidfile​

Pfad der pidfile, in die die Prozess-ID geschrieben wird.

Beispiel:

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

usePrivateIp​

Setzt die Remote-Adresse auf eine interne IP der Client-Maschine.

Beispiel:

{"usePrivateIp": true}

Weitere Informationen zu diesen Optionen finden Sie hier.

preferScenarioName​

Nur Cucumber. Setzen Sie den Sitzungsnamen auf den Szenarionamen, wenn nur ein einzelnes Szenario ausgeführt wurde. Nützlich bei paralleler Ausführung mit wdio-cucumber-parallel-execution.

Typ: Boolean
Standard: false

sessionNameFormat​

Passen Sie das Sitzungsnamenformat an.

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

sessionNameOmitTestTitle​

Nur Mocha. Hängen Sie den Testtitel nicht an den Sitzungsnamen an.

Typ: Boolean
Standard: false

sessionNamePrependTopLevelSuiteTitle​

Nur Mocha. Stellen Sie den Titel der obersten Suite dem Sitzungsnamen voran.

Typ: Boolean
Standard: false

setSessionName​

Legen Sie den Sitzungsnamen automatisch fest.

Typ: Boolean
Standard: true

setSessionStatus​

Legen Sie den Sitzungsstatus automatisch fest (bestanden/fehlgeschlagen).

Typ: Boolean
Standard: true

ignoreTestCountInName​

Ignorieren Sie die Anzahl der Wiederholungen eines Tests im Namen

Typ: Boolean
Standard: false

useScenarioName​

Um Testnamen als Szenarionamen für Cucumber-spezifische Tests zu erhalten, fügen Sie einfach useScenarioName: true in Ihrer wdio.conf.js hinzu.

Schritte zum Kompilieren und Veröffentlichen​

  1. Klonen Sie dieses Repository.
  2. Führen Sie "npm install" aus
  3. Führen Sie "npm run build" aus
  4. Schritte zum Veröffentlichen: Führen Sie "npm login" aus
  5. Führen Sie "npm publish --access public" aus

Weitere Informationen zu WebdriverIO finden Sie auf der Homepage.

Welcome! How can I help?

WebdriverIO AI Copilot