Vai al contenuto principale

Interfaccia REPL

Con v4.5.0, WebdriverIO ha introdotto un'interfaccia REPL che ti aiuta non solo ad imparare l'API del framework, ma anche a debuggare e ispezionare i tuoi test. Può essere utilizzata in diversi modi.

Prima di tutto, puoi usarla come comando CLI installando npm install -g @wdio/cli e avviare una sessione WebDriver dalla riga di comando, ad esempio:

wdio repl chrome

Questo aprirebbe un browser Chrome che puoi controllare con l'interfaccia REPL. Assicurati di avere un driver del browser in esecuzione sulla porta 4444 per iniziare la sessione. Se hai un account Sauce Labs (o altro fornitore cloud), puoi anche eseguire direttamente il browser sulla tua riga di comando nel cloud tramite:

wdio repl chrome -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY

Se il driver è in esecuzione su una porta diversa, ad esempio: 9515, può essere passato con l'argomento --port o l'alias -p

wdio repl chrome -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY -p 9515

Il REPL può anche essere eseguito utilizzando le capacità dal file di configurazione WebdriverIO. Wdio supporta l'oggetto capabilities; o; l'elenco di capacità multiremote o l'oggetto.

Se il file di configurazione utilizza l'oggetto capabilities, basta passare il percorso al file di configurazione, altrimenti se è una capacità multiremote, specificare quale capacità utilizzare dall'elenco o multiremote utilizzando l'argomento posizionale. Nota: per l'elenco consideriamo l'indice basato su zero.

Esempio

WebdriverIO con array di capabilities:

wdio.conf.ts example
export const config = {
// ...
capabilities:[{
browserName: 'chrome', // options: `chrome`, `edge`, `firefox`, `safari`, `chromium`
browserVersion: '27.0', // browser version
platformName: 'Windows 10' // OS platform
}]
}
wdio repl "./path/to/wdio.config.js" 0 -p 9515

WebdriverIO con oggetto capability multiremote:

wdio.conf.ts example
export const config = {
// ...
capabilities: {
myChromeBrowser: {
capabilities: {
browserName: 'chrome'
}
},
myFirefoxBrowser: {
capabilities: {
browserName: 'firefox'
}
}
}
}
wdio repl "./path/to/wdio.config.js" "myChromeBrowser" -p 9515

Oppure se vuoi eseguire test mobili locali usando Appium:

wdio repl android

Questo aprirebbe una sessione Chrome/Safari sul dispositivo/emulatore/simulatore connesso. Assicurati che Appium sia in esecuzione sulla porta 4444 per iniziare la sessione.

wdio repl './path/to/your_app.apk'

Questo aprirebbe una sessione App sul dispositivo/emulatore/simulatore connesso. Assicurati che Appium sia in esecuzione sulla porta 4444 per iniziare la sessione.

Le capabilities per il dispositivo iOS possono essere passate con argomenti:

  • -v - platformVersion: versione della piattaforma Android/iOS
  • -d - deviceName: nome del dispositivo mobile
  • -u - udid: udid per dispositivi reali

Utilizzo:

wdio repl ios --platformVersion 11.3 --deviceName 'iPhone 7' --udid 123432abc

Puoi applicare qualsiasi opzione (vedi wdio repl --help) disponibile per la tua sessione REPL.

WebdriverIO REPL

Un altro modo per utilizzare il REPL è all'interno dei tuoi test tramite il comando debug. Questo fermerà il browser quando chiamato e ti permetterà di passare all'applicazione (ad esempio agli strumenti di sviluppo) o controllare il browser dalla riga di comando. Questo è utile quando alcuni comandi non attivano una determinata azione come previsto. Con il REPL, puoi provare i comandi per vedere quali funzionano in modo più affidabile.

Welcome! How can I help?

WebdriverIO AI Copilot