Przejdź do głównej treści

Interfejs REPL

Od wersji v4.5.0 WebdriverIO wprowadził interfejs REPL, który pomaga nie tylko nauczyć się API frameworka, ale także debugować i analizować testy. Może być używany na wiele sposobów.

Po pierwsze, możesz używać go jako polecenia CLI, instalując npm install -g @wdio/cli i uruchamiając sesję WebDrivera z linii poleceń, np.

wdio repl chrome

Otworzy to przeglądarkę Chrome, którą możesz kontrolować za pomocą interfejsu REPL. Upewnij się, że masz uruchomiony sterownik przeglądarki na porcie 4444, aby zainicjować sesję. Jeśli masz konto Sauce Labs (lub innego dostawcy chmury), możesz również bezpośrednio uruchomić przeglądarkę z linii poleceń w chmurze za pomocą:

wdio repl chrome -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY

Jeśli sterownik działa na innym porcie, np.: 9515, można go przekazać za pomocą argumentu wiersza poleceń --port lub aliasu -p

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

Repl może być również uruchamiany przy użyciu konfiguracji z pliku konfiguracyjnego webdriverIO. Wdio obsługuje obiekt capabilities; lub listę capabilities multiremote lub obiekt.

Jeśli plik konfiguracyjny używa obiektu capabilities, to wystarczy przekazać ścieżkę do pliku konfiguracyjnego, a jeśli to jest konfiguracja multiremote, to określ, które capabilities użyć z listy lub multiremote za pomocą argumentu pozycyjnego. Uwaga: dla listy używamy indeksu bazującego na zeru.

Przykład

WebdriverIO z tablicą capability:

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 z obiektem 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

Lub jeśli chcesz uruchomić lokalne testy mobilne za pomocą Appium:

wdio repl android

Otworzy to sesję Chrome/Safari na podłączonym urządzeniu/emulatorze/symulatorze. Upewnij się, że Appium działa na porcie 4444, aby zainicjować sesję.

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

Otworzy to sesję aplikacji na podłączonym urządzeniu/emulatorze/symulatorze. Upewnij się, że Appium działa na porcie 4444, aby zainicjować sesję.

Konfiguracje dla urządzenia iOS można przekazać za pomocą argumentów:

  • -v - platformVersion: wersja platformy Android/iOS
  • -d - deviceName: nazwa urządzenia mobilnego
  • -u - udid: udid dla rzeczywistych urządzeń

Użycie:

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

Możesz zastosować dowolne opcje (zobacz wdio repl --help) dostępne dla Twojej sesji REPL.

WebdriverIO REPL

Innym sposobem korzystania z REPL jest użycie go wewnątrz testów za pomocą polecenia debug. Zatrzyma to przeglądarkę po wywołaniu i umożliwi przejście do aplikacji (np. do narzędzi programistycznych) lub sterowanie przeglądarką z wiersza poleceń. Jest to pomocne, gdy niektóre polecenia nie wywołują określonej akcji zgodnie z oczekiwaniami. Za pomocą REPL możesz wtedy wypróbować polecenia, aby zobaczyć, które działają najbardziej niezawodnie.

Welcome! How can I help?

WebdriverIO AI Copilot