Configurazione
Basato sul tipo di configurazione (ad esempio utilizzando i binding del protocollo raw, WebdriverIO come pacchetto standalone o il testrunner WDIO) c'è un diverso insieme di opzioni disponibili per controllare l'ambiente.
Opzioni WebDriver
Le seguenti opzioni sono definite quando si utilizza il pacchetto di protocollo webdriver
:
protocol
Protocollo da utilizzare quando si comunica con il server driver.
Tipo: String
Predefinito: http
hostname
Host del server driver.
Tipo: String
Predefinito: 0.0.0.0
port
Porta su cui si trova il server driver.
Tipo: Number
Predefinito: undefined
path
Percorso dell'endpoint del server driver.
Tipo: String
Predefinito: /
queryParams
Parametri di query che vengono propagati al server driver.
Tipo: Object
Predefinito: undefined
user
Il tuo nome utente del servizio cloud (funziona solo per account Sauce Labs, Browserstack, TestingBot o LambdaTest). Se impostato, WebdriverIO imposterà automaticamente le opzioni di connessione per te. Se non utilizzi un provider cloud, questo può essere utilizzato per autenticare qualsiasi altro backend WebDriver.
Tipo: String
Predefinito: undefined
key
La tua chiave di accesso o chiave segreta del servizio cloud (funziona solo per account Sauce Labs, Browserstack, TestingBot o LambdaTest). Se impostato, WebdriverIO imposterà automaticamente le opzioni di connessione per te. Se non utilizzi un provider cloud, questo può essere utilizzato per autenticare qualsiasi altro backend WebDriver.
Tipo: String
Predefinito: undefined
capabilities
Definisce le capabilities che vuoi eseguire nella tua sessione WebDriver. Consulta il protocollo WebDriver per maggiori dettagli. Se esegui un driver più vecchio che non supporta il protocollo WebDriver, dovrai utilizzare le capabilities del JSONWireProtocol per eseguire con successo una sessione.
Oltre alle capabilities basate su WebDriver, puoi applicare opzioni specifiche per browser e vendor che consentono una configurazione più profonda del browser remoto o del dispositivo. Queste sono documentate nelle corrispondenti documentazioni dei vendor, ad esempio:
goog:chromeOptions
: per Google Chromemoz:firefoxOptions
: per Mozilla Firefoxms:edgeOptions
: per Microsoft Edgesauce:options
: per Sauce Labsbstack:options
: per BrowserStackselenoid:options
: per Selenoid
Inoltre, un'utilità utile è il Configuratore di Test Automatici di Sauce Labs, che ti aiuta a creare questo oggetto semplicemente cliccando insieme le tue capabilities desiderate.
Tipo: Object
Predefinito: null
Esempio:
{
browserName: 'chrome', // opzioni: `chrome`, `edge`, `firefox`, `safari`
browserVersion: '27.0', // versione del browser
platformName: 'Windows 10' // piattaforma del sistema operativo
}
Se stai eseguendo test web o nativi su dispositivi mobili, capabilities
differisce dal protocollo WebDriver. Consulta la documentazione di Appium per maggiori dettagli.
logLevel
Livello di verbosità dei log.
Tipo: String
Predefinito: info
Opzioni: trace
| debug
| info
| warn
| error
| silent
outputDir
Directory per memorizzare tutti i file di log del testrunner (inclusi i log del reporter e i log wdio
). Se non impostato, tutti i log vengono trasmessi su stdout
. Poiché la maggior parte dei reporter è progettata per scrivere su stdout
, si consiglia di utilizzare questa opzione solo per reporter specifici dove ha più senso inviare il report in un file (come il reporter junit
, ad esempio).
In modalità standalone, l'unico log generato da WebdriverIO sarà il log wdio
.
Tipo: String
Predefinito: null
connectionRetryTimeout
Timeout per qualsiasi richiesta WebDriver a un driver o grid.
Tipo: Number
Predefinito: 120000
connectionRetryCount
Numero massimo di tentativi di richiesta al server Selenium.
Tipo: Number
Predefinito: 3
agent
Consente di utilizzare un http
/https
/http2
agent personalizzato per effettuare richieste.
Tipo: Object
Predefinito:
{
http: new http.Agent({ keepAlive: true }),
https: new https.Agent({ keepAlive: true })
}
headers
Specifica headers
personalizzati da passare in ogni richiesta WebDriver. Se la tua Selenium Grid richiede l'autenticazione di base, ti consigliamo di passare un header Authorization
tramite questa opzione per autenticare le tue richieste WebDriver, ad esempio:
import { Buffer } from 'buffer';
// Read the username and password from environment variables
const username = process.env.SELENIUM_GRID_USERNAME;
const password = process.env.SELENIUM_GRID_PASSWORD;
// Combine the username and password with a colon separator
const credentials = `${username}:${password}`;
// Encode the credentials using Base64
const encodedCredentials = Buffer.from(credentials).toString('base64');
export const config: WebdriverIO.Config = {
// ...
headers: {
Authorization: `Basic ${encodedCredentials}`
}
// ...
}
Tipo: Object
Predefinito: {}
transformRequest
Funzione che intercetta le opzioni della richiesta HTTP prima che venga effettuata una richiesta WebDriver
Tipo: (RequestOptions) => RequestOptions
Predefinito: nessuno
transformResponse
Funzione che intercetta gli oggetti di risposta HTTP dopo che una risposta WebDriver è arrivata. La funzione riceve l'oggetto di risposta originale come primo argomento e le corrispondenti RequestOptions
come secondo argomento.
Tipo: (Response, RequestOptions) => Response
Predefinito: nessuno
strictSSL
Se non richiede che il certificato SSL sia valido.
Può essere impostato tramite variabili d'ambiente come STRICT_SSL
o strict_ssl
.
Tipo: Boolean
Predefinito: true
enableDirectConnect
Se abilitare la funzionalità di connessione diretta di Appium. Non fa nulla se la risposta non ha le chiavi appropriate mentre il flag è abilitato.
Tipo: Boolean
Predefinito: true
cacheDir
Il percorso alla radice della directory della cache. Questa directory viene utilizzata per memorizzare tutti i driver che vengono scaricati quando si tenta di avviare una sessione.
Tipo: String
Predefinito: process.env.WEBDRIVER_CACHE_DIR || os.tmpdir()
WebdriverIO
Le seguenti opzioni (incluse quelle elencate sopra) possono essere utilizzate con WebdriverIO in modalità standalone:
automationProtocol
Definisci il protocollo che vuoi utilizzare per l'automazione del browser. Attualmente è supportato solo webdriver
, in quanto è la principale tecnologia di automazione del browser utilizzata da WebdriverIO.
Se vuoi automatizzare il browser utilizzando una tecnologia di automazione diversa, assicurati di impostare questa proprietà su un percorso che porta a un modulo che aderisce alla seguente interfaccia:
import type { Capabilities } from '@wdio/types';
import type { Client, AttachOptions } from 'webdriver';
export default class YourAutomationLibrary {
/**
* Start a automation session and return a WebdriverIO [monad](https://github.com/webdriverio/webdriverio/blob/940cd30939864bdbdacb2e94ee6e8ada9b1cc74c/packages/wdio-utils/src/monad.ts)
* with respective automation commands. See the [webdriver](https://www.npmjs.com/package/webdriver) package
* as a reference implementation
*
* @param {Capabilities.RemoteConfig} options WebdriverIO options
* @param {Function} hook that allows to modify the client before it gets released from the function
* @param {PropertyDescriptorMap} userPrototype allows user to add custom protocol commands
* @param {Function} customCommandWrapper allows to modify the command execution
* @returns a WebdriverIO compatible client instance
*/
static newSession(
options: Capabilities.RemoteConfig,
modifier?: (...args: any[]) => any,
userPrototype?: PropertyDescriptorMap,
customCommandWrapper?: (...args: any[]) => any
): Promise<Client>;
/**
* allows user to attach to existing sessions
* @optional
*/
static attachToSession(
options?: AttachOptions,
modifier?: (...args: any[]) => any, userPrototype?: {},
commandWrapper?: (...args: any[]) => any
): Client;
/**
* Changes The instance session id and browser capabilities for the new session
* directly into the passed in browser object
*
* @optional
* @param {object} instance the object we get from a new browser session.
* @returns {string} the new session id of the browser
*/
static reloadSession(
instance: Client,
newCapabilities?: WebdriverIO.Capabilitie
): Promise<string>;
}
Tipo: String
Predefinito: webdriver
baseUrl
Abbrevia le chiamate al comando url
impostando un URL di base.
- Se il parametro
url
inizia con/
, allorabaseUrl
viene anteposto (tranne il percorsobaseUrl
, se ne ha uno). - Se il parametro
url
inizia senza uno schema o/
(comesome/path
), allora ilbaseUrl
completo viene anteposto direttamente.
Tipo: String
Predefinito: null
waitforTimeout
Timeout predefinito per tutti i comandi waitFor*
. (Nota la "f" minuscola nel nome dell'opzione.) Questo timeout solo influisce sui comandi che iniziano con waitFor*
e sul loro tempo di attesa predefinito.
Per aumentare il timeout per un test, consulta la documentazione del framework.
Tipo: Number
Predefinito: 5000
waitforInterval
Intervallo predefinito per tutti i comandi waitFor*
per verificare se è cambiato uno stato previsto (ad esempio, visibilità).
Tipo: Number
Predefinito: 100
region
Se stai eseguendo su Sauce Labs, puoi scegliere di eseguire i test tra diversi data center: US o EU.
Per cambiare la tua regione in EU, aggiungi region: 'eu'
alla tua configurazione.
Nota: Questo ha effetto solo se fornisci le opzioni user
e key
che sono collegate al tuo account Sauce Labs.
Tipo: String
Predefinito: us
(solo per vm e/o em/simulatori)
Opzioni del Testrunner
Le seguenti opzioni (incluse quelle elencate sopra) sono definite solo per l'esecuzione di WebdriverIO con il testrunner WDIO:
specs
Definisci le specifiche per l'esecuzione del test. Puoi specificare un pattern glob per abbinare più file contemporaneamente o avvolgere un glob o un insieme di percorsi in un array per eseguirli all'interno di un singolo processo worker. Tutti i percorsi sono considerati relativi dal percorso del file di configurazione.
Tipo: (String | String[])[]
Predefinito: []
exclude
Escludi le specifiche dall'esecuzione del test. Tutti i percorsi sono considerati relativi dal percorso del file di configurazione.
Tipo: String[]
Predefinito: []
suites
Un oggetto che descrive varie suite, che puoi quindi specificare con l'opzione --suite
sulla CLI wdio
.
Tipo: Object
Predefinito: {}
capabilities
Lo stesso della sezione capabilities
descritta sopra, tranne con l'opzione di specificare un oggetto multiremote
, o più sessioni WebDriver in un array per l'esecuzione parallela.
Puoi applicare le stesse capabilities specifiche per vendor e browser come definito sopra.
Tipo: Object
|Object[]
Predefinito: [{ 'wdio:maxInstances': 5, browserName: 'firefox' }]
maxInstances
Numero massimo totale di worker in esecuzione parallela.
Nota: che può essere un numero elevato come 100
, quando i test vengono eseguiti su fornitori esterni come le macchine di Sauce Labs. Lì, i test non vengono testati su una singola macchina, ma piuttosto su più VM. Se i test devono essere eseguiti su una macchina di sviluppo locale, usa un numero più ragionevole, come 3
, 4
o 5
. In sostanza, questo è il numero di browser che verranno avviati contemporaneamente ed eseguiranno i tuoi test allo stesso tempo, quindi dipende da quanta RAM è presente sulla tua macchina e da quante altre app sono in esecuzione sulla tua macchina.
Puoi anche applicare maxInstances
all'interno dei tuoi oggetti capability utilizzando la capability wdio:maxInstances
. Questo limiterà la quantità di sessioni parallele per quella particolare capability.
Tipo: Number
Predefinito: 100
maxInstancesPerCapability
Numero massimo totale di worker in esecuzione parallela per capability.
Tipo: Number
Predefinito: 100
injectGlobals
Inserisce i globali di WebdriverIO (ad esempio browser
, $
e $$
) nell'ambiente globale.
Se lo imposti su false
, dovresti importare da @wdio/globals
, ad esempio:
import { browser, $, $$, expect } from '@wdio/globals'
Nota: WebdriverIO non gestisce l'iniezione di globali specifici del framework di test.
Tipo: Boolean
Predefinito: true
bail
Se vuoi che l'esecuzione del test si interrompa dopo un numero specifico di test falliti, usa bail
.
(Per impostazione predefinita è 0
, che esegue tutti i test indipendentemente da ciò). Nota: Un test in questo contesto sono tutti i test all'interno di un singolo file di spec (quando si utilizza Mocha o Jasmine) o tutti i passaggi all'interno di un file di feature (quando si utilizza Cucumber). Se vuoi controllare il comportamento di bail all'interno dei test di un singolo file di test, dai un'occhiata alle opzioni del framework disponibili.
Tipo: Number
Predefinito: 0
(non interrompere; esegui tutti i test)
specFileRetries
Il numero di volte in cui riprovare un intero file specfile quando fallisce nel suo complesso.
Tipo: Number
Predefinito: 0
specFileRetriesDelay
Ritardo in secondi tra i tentativi di ripetizione del file spec
Tipo: Number
Predefinito: 0
specFileRetriesDeferred
Se i file spec ripetuti devono essere ritentati immediatamente o differiti alla fine della coda.
Tipo: Boolean
Predefinito: true
groupLogsByTestSpec
Scegli la vista di output dei log.
Se impostato su false
, i log da diversi file di test verranno stampati in tempo reale. Tieni presente che ciò potrebbe comportare la mescolanza degli output di log da file diversi quando si esegue in parallelo.
Se impostato su true
, gli output di log saranno raggruppati per Test Spec e stampati solo quando il Test Spec è completato.
Per impostazione predefinita, è impostato su false
quindi i log vengono stampati in tempo reale.
Tipo: Boolean
Predefinito: false
services
I servizi si occupano di un lavoro specifico di cui non vuoi occuparti. Migliorano la tua configurazione di test con quasi nessuno sforzo.
Tipo: String[]|Object[]
Predefinito: []
framework
Definisce il framework di test da utilizzare dal testrunner WDIO.
Tipo: String
Predefinito: mocha
Opzioni: mocha
| jasmine
mochaOpts, jasmineOpts e cucumberOpts
Opzioni specifiche del framework. Consulta la documentazione dell'adattatore del framework per capire quali opzioni sono disponibili. Leggi di più su questo in Frameworks.
Tipo: Object
Predefinito: { timeout: 10000 }
cucumberFeaturesWithLineNumbers
Elenco delle funzionalità di cucumber con numeri di riga (quando si utilizza il framework cucumber).
Tipo: String[]
Predefinito: []
reporters
Elenco di reporter da utilizzare. Un reporter può essere una stringa, o un array di
['reporterName', { /* reporter options */}]
dove il primo elemento è una stringa con il nome del reporter e il secondo elemento è un oggetto con le opzioni del reporter.
Tipo: String[]|Object[]
Predefinito: []
Esempio:
reporters: [
'dot',
'spec'
['junit', {
outputDir: `${__dirname}/reports`,
otherOption: 'foobar'
}]
]
reporterSyncInterval
Determina in quale intervallo il reporter dovrebbe controllare se sono sincronizzati se riferiscono i loro log in modo asincrono (ad esempio, se i log vengono trasmessi a un fornitore di terze parti).
Tipo: Number
Predefinito: 100
(ms)
reporterSyncTimeout
Determina il tempo massimo che i reporter hanno per completare il caricamento di tutti i loro log fino a quando viene generato un errore dal testrunner.
Tipo: Number
Predefinito: 5000
(ms)
execArgv
Argomenti Node da specificare quando si avviano processi figlio.
Tipo: String[]
Predefinito: null
filesToWatch
Un elenco di pattern di stringhe che supportano glob che dicono al testrunner di osservare anche altri file, ad esempio file di applicazione, quando viene eseguito con il flag --watch
. Per impostazione predefinita, il testrunner osserva già tutti i file di specifiche.
Tipo: String[]
Predefinito: []
updateSnapshots
Imposta su true se vuoi aggiornare i tuoi snapshot. Idealmente utilizzato come parte di un parametro CLI, ad esempio wdio run wdio.conf.js --s
.
Tipo: 'new' | 'all' | 'none'
Predefinito: none
se non fornito e i test sono eseguiti in CI, new
se non fornito, altrimenti ciò che è stato fornito
resolveSnapshotPath
Sovrascrive il percorso predefinito degli snapshot. Ad esempio, per memorizzare gli snapshot accanto ai file di test.
export const config: WebdriverIO.Config = {
resolveSnapshotPath: (testPath, snapExtension) => testPath + snapExtension,
}
Tipo: (testPath: string, snapExtension: string) => string
Predefinito: memorizza i file di snapshot nella directory __snapshots__
accanto al file di test
tsConfigPath
WDIO utilizza tsx
per compilare i file TypeScript. Il tuo TSConfig viene rilevato automaticamente dalla directory di lavoro corrente, ma puoi specificare un percorso personalizzato qui o impostando la variabile di ambiente TSX_TSCONFIG_PATH.
Consulta la documentazione di tsx
: https://tsx.is/dev-api/node-cli#custom-tsconfig-json-path
Tipo: String
Predefinito: null
Hooks
Il testrunner WDIO ti consente di impostare hooks da attivare in momenti specifici del ciclo di vita del test. Ciò consente azioni personalizzate (ad esempio, scattare uno screenshot se un test fallisce).
Ogni hook ha come parametro informazioni specifiche sul ciclo di vita (ad esempio, informazioni sulla suite di test o sul test). Leggi di più su tutte le proprietà degli hook nel nostro esempio di configurazione.
Nota: Alcuni hook (onPrepare
, onWorkerStart
, onWorkerEnd
e onComplete
) vengono eseguiti in un processo diverso e quindi non possono condividere dati globali con gli altri hook che vivono nel processo worker.
onPrepare
Viene eseguito una volta prima che tutti i worker vengano lanciati.
Parametri:
config
(object
): oggetto di configurazione WebdriverIOparam
(object[]
): elenco dei dettagli delle capabilities
onWorkerStart
Viene eseguito prima che un processo worker venga generato e può essere utilizzato per inizializzare servizi specifici per quel worker e modificare gli ambienti di runtime in modo asincrono.
Parametri:
cid
(string
): id della capability (ad es. 0-0)caps
(object
): contenente le capabilities per la sessione che verrà generata nel workerspecs
(string[]
): specifiche da eseguire nel processo workerargs
(object
): oggetto che verrà unito alla configurazione principale una volta che il worker è inizializzatoexecArgv
(string[]
): elenco di argomenti di stringa passati al processo worker
onWorkerEnd
Viene eseguito subito dopo che un processo worker è terminato.
Parametri:
cid
(string
): id della capability (ad es. 0-0)exitCode
(number
): 0 - successo, 1 - fallimentospecs
(string[]
): specifiche da eseguire nel processo workerretries
(number
): numero di tentativi a livello di spec utilizzati come definito in "Aggiungi tentativi su base per-specfile"
beforeSession
Viene eseguito subito prima di inizializzare la sessione webdriver e il framework di test. Ti consente di manipolare le configurazioni in base alla capability o alla spec.
Parametri:
config
(object
): oggetto di configurazione WebdriverIOcaps
(object
): contenente le capabilities per la sessione che verrà generata nel workerspecs
(string[]
): specifiche da eseguire nel processo worker
before
Viene eseguito prima dell'inizio dell'esecuzione del test. A questo punto puoi accedere a tutte le variabili globali come browser
. È il posto perfetto per definire comandi personalizzati.
Parametri:
caps
(object
): contenente le capabilities per la sessione che verrà generata nel workerspecs
(string[]
): specifiche da eseguire nel processo workerbrowser
(object
): istanza della sessione browser/dispositivo creata
beforeSuite
Hook che viene eseguito prima dell'inizio della suite (solo in Mocha/Jasmine)
Parametri:
suite
(object
): dettagli della suite
beforeHook
Hook che viene eseguito prima di un hook all'interno della suite inizia (ad esempio viene eseguito prima di chiamare beforeEach in Mocha)
Parametri:
test
(object
): dettagli del testcontext
(object
): contesto del test (rappresenta l'oggetto World in Cucumber)
afterHook
Hook che viene eseguito dopo che un hook all'interno della suite termina (ad esempio viene eseguito dopo aver chiamato afterEach in Mocha)
Parametri:
test
(object
): dettagli del testcontext
(object
): contesto del test (rappresenta l'oggetto World in Cucumber)result
(object
): risultato del hook (contiene le proprietàerror
,result
,duration
,passed
,retries
)
beforeTest
Funzione da eseguire prima di un test (solo in Mocha/Jasmine).
Parametri:
test
(object
): dettagli del testcontext
(object
): oggetto di ambito con cui è stato eseguito il test
beforeCommand
Viene eseguito prima dell'esecuzione di un comando WebdriverIO.
Parametri:
commandName
(string
): nome del comandoargs
(*
): argomenti che il comando riceverà
afterCommand
Viene eseguito dopo l'esecuzione di un comando WebdriverIO.
Parametri:
commandName
(string
): nome del comandoargs
(*
): argomenti che il comando riceveràresult
(number
): 0 - comando riuscito, 1 - errore del comandoerror
(Error
): oggetto errore se presente
afterTest
Funzione da eseguire dopo la fine di un test (in Mocha/Jasmine).
Parametri:
test
(object
): dettagli del testcontext
(object
): oggetto di ambito con cui è stato eseguito il testresult.error
(Error
): oggetto errore in caso di fallimento del test, altrimentiundefined
result.result
(Any
): oggetto di ritorno della funzione di testresult.duration
(Number
): durata del testresult.passed
(Boolean
): true se il test è passato, altrimenti falseresult.retries
(Object
): informazioni sui tentativi di test singoli come definito per Mocha e Jasmine così come Cucumber, ad es.{ attempts: 0, limit: 0 }
, vediresult
(object
): risultato del hook (contiene le proprietàerror
,result
,duration
,passed
,retries
)
afterSuite
Hook che viene eseguito dopo che la suite è terminata (solo in Mocha/Jasmine)
Parametri:
suite
(object
): dettagli della suite
after
Viene eseguito dopo che tutti i test sono terminati. Hai ancora accesso a tutte le variabili globali dal test.
Parametri:
result
(number
): 0 - test passato, 1 - test fallitocaps
(object
): contenente le capabilities per la sessione che verrà generata nel workerspecs
(string[]
): specifiche da eseguire nel processo worker
afterSession
Viene eseguito subito dopo la terminazione della sessione webdriver.
Parametri:
config
(object
): oggetto di configurazione WebdriverIOcaps
(object
): contenente le capabilities per la sessione che verrà generata nel workerspecs
(string[]
): specifiche da eseguire nel processo worker
onComplete
Viene eseguito dopo che tutti i worker sono stati spenti e il processo sta per uscire. Un errore lanciato nell'hook onComplete comporterà il fallimento dell'esecuzione del test.
Parametri:
exitCode
(number
): 0 - successo, 1 - fallimentoconfig
(object
): oggetto di configurazione WebdriverIOcaps
(object
): contenente le capabilities per la sessione che verrà generata nel workerresult
(object
): oggetto dei risultati contenente i risultati dei test
onReload
Viene eseguito quando si verifica un aggiornamento.
Parametri:
oldSessionId
(string
): ID della sessione precedentenewSessionId
(string
): ID della nuova sessione
beforeFeature
Viene eseguito prima di una Feature Cucumber.
Parametri:
uri
(string
): percorso del file featurefeature
(GherkinDocument.IFeature
): oggetto feature Cucumber
afterFeature
Viene eseguito dopo una Feature Cucumber.
Parametri:
uri
(string
): percorso del file featurefeature
(GherkinDocument.IFeature
): oggetto feature Cucumber
beforeScenario
Viene eseguito prima di uno Scenario Cucumber.
Parametri:
world
(ITestCaseHookParameter
): oggetto world contenente informazioni su pickle e step di testcontext
(object
): oggetto World Cucumber
afterScenario
Viene eseguito dopo uno Scenario Cucumber.
Parametri:
world
(ITestCaseHookParameter
): oggetto world contenente informazioni su pickle e step di testresult
(object
): oggetto dei risultati contenente i risultati dello scenarioresult.passed
(boolean
): true se lo scenario è passatoresult.error
(string
): stack di errori se lo scenario è fallitoresult.duration
(number
): durata dello scenario in millisecondicontext
(object
): oggetto World Cucumber
beforeStep
Viene eseguito prima di uno Step Cucumber.
Parametri:
step
(Pickle.IPickleStep
): oggetto step Cucumberscenario
(IPickle
): oggetto scenario Cucumbercontext
(object
): oggetto World Cucumber
afterStep
Viene eseguito dopo uno Step Cucumber.
Parametri:
step
(Pickle.IPickleStep
): oggetto step Cucumberscenario
(IPickle
): oggetto scenario Cucumberresult
: (object
): oggetto dei risultati contenente i risultati dello stepresult.passed
(boolean
): true se lo scenario è passatoresult.error
(string
): stack di errori se lo scenario è fallitoresult.duration
(number
): durata dello scenario in millisecondicontext
(object
): oggetto World Cucumber
beforeAssertion
Hook che viene eseguito prima che avvenga un'asserzione WebdriverIO.
Parametri:
params
: informazioni sull'asserzioneparams.matcherName
(string
): nome del matcher (ad es.toHaveTitle
)params.expectedValue
: valore che viene passato al matcherparams.options
: opzioni di asserzione
afterAssertion
Hook che viene eseguito dopo che è avvenuta un'asserzione WebdriverIO.
Parametri:
params
: informazioni sull'asserzioneparams.matcherName
(string
): nome del matcher (ad es.toHaveTitle
)params.expectedValue
: valore che viene passato al matcherparams.options
: opzioni di asserzioneparams.result
: risultati dell'asserzione