Możliwości
Możliwość (capability) to definicja zdalnego interfejsu. Pomaga ona WebdriverIO zrozumieć, w jakim środowisku przeglądarki lub urządzenia mobilnego chcesz uruchomić swoje testy. Możliwości są mniej kluczowe podczas lokalnego tworzenia testów, ponieważ najczęściej uruchamiasz je na jednym zdalnym interfejsie, ale stają się ważniejsze podczas uruchamiania dużego zestawu testów integracyjnych w CI/CD.
Format obiektu możliwości jest dobrze zdefiniowany przez specyfikację WebDriver. Testrunner WebdriverIO zakończy działanie wcześniej, jeśli zdefiniowane przez użytkownika możliwości nie będą zgodne z tą specyfikacją.
Niestandardowe możliwości
Podczas gdy liczba ustalonych, zdefiniowanych możliwości jest bardzo niska, każdy może dostarczać i akceptować niestandardowe możliwości, które są specyficzne dla sterownika automatyzacji lub zdalnego interfejsu:
Rozszerzenia możliwości specyficzne dla przeglądarki
goog:chromeOptions
: Rozszerzenia Chromedriver, stosowane tylko dla testowania w Chromemoz:firefoxOptions
: Rozszerzenia Geckodriver, stosowane tylko dla testowania w Firefoxms:edgeOptions
: EdgeOptions do określania środowiska podczas używania EdgeDriver do testowania Chromium Edge
Rozszerzenia możliwości dostawców chmurowych
sauce:options
: Sauce Labsbstack:options
: BrowserStacktb:options
: TestingBot- i wiele innych...
Rozszerzenia możliwości silnika automatyzacji
Możliwości WebdriverIO do zarządzania opcjami sterownika przeglądarki
WebdriverIO zarządza instalacją i uruchamianiem sterownika przeglądarki za Ciebie. WebdriverIO używa niestandardowej możliwości, która pozwala na przekazanie parametrów do sterownika.
wdio:chromedriverOptions
Konkretne opcje przekazywane do Chromedriver podczas jego uruchamiania.
wdio:geckodriverOptions
Konkretne opcje przekazywane do Geckodriver podczas jego uruchamiania.
wdio:edgedriverOptions
Konkretne opcje przekazywane do Edgedriver podczas jego uruchamiania.
wdio:safaridriverOptions
Konkretne opcje przekazywane do Safari podczas jego uruchamiania.
wdio:maxInstances
Maksymalna liczba równolegle działających pracowników dla określonej przeglądarki/możliwości. Ma pierwszeństwo przed maxInstances i maxInstancesPerCapability.
Typ: number
wdio:specs
Definiuje specyfikacje dla wykonania testu dla tej przeglądarki/możliwości. Tak samo jak zwykła opcja konfiguracji specs
, ale specyficzna dla przeglądarki/możliwości. Ma pierwszeństwo przed specs
.
Typ: (String | String[])[]
wdio:exclude
Wyklucza specyfikacje z wykonania testu dla tej przeglądarki/możliwości. Tak samo jak zwykła opcja konfiguracji exclude
, ale specyficzna dla przeglądarki/możliwości. Wyklucza po zastosowaniu globalnej opcji konfiguracji exclude
.
Typ: String[]
wdio:enforceWebDriverClassic
Domyślnie WebdriverIO próbuje ustanowić sesję WebDriver Bidi. Jeśli tego nie preferujesz, możesz ustawić tę flagę, aby wyłączyć to zachowanie.
Typ: boolean
Wspólne opcje sterownika
Podczas gdy wszystkie sterowniki oferują różne parametry do konfiguracji, istnieją pewne wspólne, które WebdriverIO rozumie i używa do konfiguracji sterownika lub przeglądarki:
cacheDir
Ścieżka do katalogu głównego pamięci podręcznej. Ten katalog służy do przechowywania wszystkich sterowników pobranych podczas próby rozpoczęcia sesji.
Typ: string
Domyślnie: process.env.WEBDRIVER_CACHE_DIR || os.tmpdir()
binary
Ścieżka do niestandardowego pliku binarnego sterownika. Po ustawieniu WebdriverIO nie będzie próbować pobrać sterownika, ale użyje tego dostarczonego przez tę ścieżkę. Upewnij się, że sterownik jest kompatybilny z używaną przeglądarką.
Możesz podać tę ścieżkę za pomocą zmiennych środowiskowych CHROMEDRIVER_PATH
, GECKODRIVER_PATH
lub EDGEDRIVER_PATH
.
Typ: string
Jeśli ustawiono binary
sterownika, WebdriverIO nie będzie próbować pobrać sterownika, ale użyje tego dostarczonego przez tę ścieżkę. Upewnij się, że sterownik jest kompatybilny z używaną przeglądarką.
Opcje sterownika specyficzne dla przeglądarki
Aby przekazać opcje do sterownika, możesz użyć następujących niestandardowych możliwości:
- Chrome lub Chromium:
wdio:chromedriverOptions
- Firefox:
wdio:geckodriverOptions
- Microsoft Edge:
wdio:edgedriverOptions
- Safari:
wdio:safaridriverOptions
- wdio:chromedriverOptions
- wdio:geckodriverOptions
- wdio:edgedriverOptions
- wdio:safaridriverOptions
adbPort
Port, na którym powinien działać sterownik ADB.
Przykład: 9515
Typ: number
urlBase
Prefiks ścieżki bazowej URL dla poleceń, np. wd/url
.
Przykład: /
Typ: string
logPath
Zapisz dziennik serwera do pliku zamiast na stderr, zwiększa poziom logowania do INFO
Typ: string
logLevel
Ustaw poziom logowania. Możliwe opcje ALL
, DEBUG
, INFO
, WARNING
, SEVERE
, OFF
.
Typ: string
verbose
Loguj szczegółowo (równoważne --log-level=ALL
)
Typ: boolean
silent
Nie loguj niczego (równoważne --log-level=OFF
)
Typ: boolean
appendLog
Dołącz do pliku dziennika zamiast nadpisywać.
Typ: boolean
replayable
Loguj szczegółowo i nie obcinaj długich ciągów, aby dziennik mógł być odtworzony (eksperymentalne).
Typ: boolean
readableTimestamp
Dodaj czytelne znaczniki czasu do dziennika.
Typ: boolean
enableChromeLogs
Pokaż dzienniki z przeglądarki (zastępuje inne opcje logowania).
Typ: boolean
bidiMapperPath
Niestandardowa ścieżka mapera bidi.
Typ: string