Configuration
Selon le type de configuration (par exemple, en utilisant les liaisons de protocole brut, WebdriverIO comme package autonome ou le testrunner WDIO), il existe un ensemble différent d'options disponibles pour contrôler l'environnement.
Options WebDriver
Les options suivantes sont définies lors de l'utilisation du package de protocole webdriver :
protocol
Protocole à utiliser lors de la communication avec le serveur de pilote.
Type: String
Défaut: http
hostname
Hôte de votre serveur de pilote.
Type: String
Défaut: 0.0.0.0
port
Port sur lequel se trouve votre serveur de pilote.
Type: Number
Défaut: undefined
path
Chemin vers le point de terminaison du serveur de pilote.
Type: String
Défaut: /
queryParams
Paramètres de requête qui sont propagés au serveur de pilote.
Type: Object
Défaut: undefined
user
Votre nom d'utilisateur du service cloud (fonctionne uniquement pour les comptes Sauce Labs, Browserstack, TestingBot ou LambdaTest). Si défini, WebdriverIO définira automatiquement les options de connexion pour vous. Si vous n'utilisez pas de fournisseur cloud, cela peut être utilisé pour authentifier tout autre backend WebDriver.
Type: String
Défaut: undefined
key
Votre clé d'accès ou clé secrète du service cloud (fonctionne uniquement pour les comptes Sauce Labs, Browserstack, TestingBot ou LambdaTest). Si défini, WebdriverIO définira automatiquement les options de connexion pour vous. Si vous n'utilisez pas de fournisseur cloud, cela peut être utilisé pour authentifier tout autre backend WebDriver.
Type: String
Défaut: undefined
capabilities
Définit les capacités que vous souhaitez exécuter dans votre session WebDriver. Consultez le Protocole WebDriver pour plus de détails. Si vous exécutez un pilote plus ancien qui ne prend pas en charge le protocole WebDriver, vous devrez utiliser les capacités JSONWireProtocol pour exécuter une session avec succès.
En plus des capacités basées sur WebDriver, vous pouvez appliquer des options spécifiques au navigateur et au fournisseur qui permettent une configuration plus approfondie du navigateur distant ou de l'appareil. Celles-ci sont documentées dans les documents des fournisseurs correspondants, par exemple :
goog:chromeOptions: pour Google Chromemoz:firefoxOptions: pour Mozilla Firefoxms:edgeOptions: pour Microsoft Edgesauce:options: pour Sauce Labsbstack:options: pour BrowserStackselenoid:options: pour Selenoid
En outre, un utilitaire utile est le Configurateur de Test Automatisé de Sauce Labs, qui vous aide à créer cet objet en cliquant sur vos capacités souhaitées.
Type: Object
Défaut: null
Exemple:
{
browserName: 'chrome', // options: `chrome`, `edge`, `firefox`, `safari`
browserVersion: '27.0', // version du navigateur
platformName: 'Windows 10' // plateforme OS
}
Si vous exécutez des tests web ou natifs sur des appareils mobiles, les capabilities diffèrent du protocole WebDriver. Consultez la Documentation Appium pour plus de détails.
logLevel
Niveau de verbosité de la journalisation.
Type: String
Défaut: info
Options: trace | debug | info | warn | error | silent
outputDir
Répertoire pour stocker tous les fichiers journaux du testrunner (y compris les journaux des rapporteurs et les journaux wdio). Si non défini, tous les journaux sont diffusés vers stdout. Étant donné que la plupart des rapporteurs sont conçus pour enregistrer dans stdout, il est recommandé de n'utiliser cette option que pour des rapporteurs spécifiques où il est plus logique de pousser le rapport dans un fichier (comme le rapporteur junit, par exemple).
En mode autonome, le seul journal généré par WebdriverIO sera le journal wdio.
Type: String
Défaut: null
connectionRetryTimeout
Délai d'attente pour toute requête WebDriver à un pilote ou à une grille.
Type: Number
Défaut: 120000
connectionRetryCount
Nombre maximum de tentatives de requêtes au serveur Selenium.
Type: Number
Défaut: 3
agent
Vous permet d'utiliser un http/https/http2 agent personnalisé pour effectuer des requêtes.
Type: Object
Défaut:
{
http: new http.Agent({ keepAlive: true }),
https: new https.Agent({ keepAlive: true })
}
headers
Spécifiez des headers personnalisés à transmettre dans chaque requête WebDriver. Si votre grille Selenium nécessite une authentification de base, nous vous recommandons de passer un en-tête Authorization via cette option pour authentifier vos requêtes WebDriver, par exemple :
import { Buffer } from 'buffer';
// Lire le nom d'utilisateur et le mot de passe des variables d'environnement
const username = process.env.SELENIUM_GRID_USERNAME;
const password = process.env.SELENIUM_GRID_PASSWORD;
// Combiner le nom d'utilisateur et le mot de passe avec un séparateur deux-points
const credentials = `${username}:${password}`;
// Encoder les informations d'identification en utilisant Base64
const encodedCredentials = Buffer.from(credentials).toString('base64');
export const config: WebdriverIO.Config = {
// ...
headers: {
Authorization: `Basic ${encodedCredentials}`
}
// ...
}
Type: Object
Défaut: {}
transformRequest
Fonction interceptant les options de requête HTTP avant qu'une requête WebDriver ne soit effectuée
Type: (RequestOptions) => RequestOptions
Défaut: aucun
transformResponse
Fonction interceptant les objets de réponse HTTP après l'arrivée d'une réponse WebDriver. La fonction reçoit l'objet de réponse original comme premier argument et les RequestOptions correspondantes comme second argument.
Type: (Response, RequestOptions) => Response
Défaut: aucun
strictSSL
Indique s'il ne nécessite pas que le certificat SSL soit valide.
Il peut être défini via des variables d'environnement comme STRICT_SSL ou strict_ssl.
Type: Boolean
Défaut: true
enableDirectConnect
Indique s'il faut activer la fonctionnalité de connexion directe d'Appium. Cela ne fait rien si la réponse n'a pas les clés appropriées lorsque l'indicateur est activé.
Type: Boolean
Défaut: true
cacheDir
Le chemin vers la racine du répertoire de cache. Ce répertoire est utilisé pour stocker tous les pilotes qui sont téléchargés lors de la tentative de démarrage d'une session.
Type: String
Défaut: process.env.WEBDRIVER_CACHE_DIR || os.tmpdir()
maskingPatterns
Pour une journalisation plus sécurisée, les expressions régulières définies avec maskingPatterns peuvent masquer les informations sensibles du journal.
- Le format de chaîne est une expression régulière avec ou sans indicateurs (par exemple,
/.../i) et séparé par des virgules pour plusieurs expressions régulières. - Pour plus de détails sur les modèles de masquage, consultez la section Masking Patterns dans le README du WDIO Logger.
Type: String
Défaut: undefined
Exemple:
{
maskingPatterns: '/--key=([^ ]*)/i,/RESULT (.*)/'
}
WebdriverIO
Les options suivantes (y compris celles énumérées ci-dessus) peuvent être utilisées avec WebdriverIO en mode autonome :
automationProtocol
Définissez le protocole que vous souhaitez utiliser pour votre automatisation de navigateur. Actuellement, seul webdriver est pris en charge, car il s'agit de la principale technologie d'automatisation de navigateur utilisée par WebdriverIO.
Si vous souhaitez automatiser le navigateur à l'aide d'une technologie d'automatisation différente, assurez-vous de définir cette propriété sur un chemin qui résout à un module qui adhère à l'interface suivante :
import type { Capabilities } from '@wdio/types';
import type { Client, AttachOptions } from 'webdriver';
export default class YourAutomationLibrary {
/**
* Démarrez une session d'automatisation et renvoyez un [monad](https://github.com/webdriverio/webdriverio/blob/940cd30939864bdbdacb2e94ee6e8ada9b1cc74c/packages/wdio-utils/src/monad.ts) WebdriverIO
* avec les commandes d'automatisation respectives. Voir le package [webdriver](https://www.npmjs.com/package/webdriver)
* comme implémentation de référence
*
* @param {Capabilities.RemoteConfig} options Options WebdriverIO
* @param {Function} hook qui permet de modifier le client avant qu'il ne soit libéré de la fonction
* @param {PropertyDescriptorMap} userPrototype permet à l'utilisateur d'ajouter des commandes de protocole personnalisées
* @param {Function} customCommandWrapper permet de modifier l'exécution de la commande
* @returns une instance client compatible WebdriverIO
*/
static newSession(
options: Capabilities.RemoteConfig,
modifier?: (...args: any[]) => any,
userPrototype?: PropertyDescriptorMap,
customCommandWrapper?: (...args: any[]) => any
): Promise<Client>;
/**
* permet à l'utilisateur de se connecter à des sessions existantes
* @optional
*/
static attachToSession(
options?: AttachOptions,
modifier?: (...args: any[]) => any, userPrototype?: {},
commandWrapper?: (...args: any[]) => any
): Client;
/**
* Change l'ID de session d'instance et les capacités du navigateur pour la nouvelle session
* directement dans l'objet du navigateur transmis
*
* @optional
* @param {object} instance l'objet que nous obtenons à partir d'une nouvelle session de navigateur.
* @returns {string} le nouvel ID de session du navigateur
*/
static reloadSession(
instance: Client,
newCapabilities?: WebdriverIO.Capabilitie
): Promise<string>;
}
Type: String
Défaut: webdriver
baseUrl
Raccourcissez les appels de commande url en définissant une URL de base.
- Si votre paramètre
urlcommence par/, alorsbaseUrlest préfixé (à l'exception du cheminbaseUrl, s'il en a un). - Si votre paramètre
urlcommence sans schéma ni/(commesome/path), alors lebaseUrlcomplet est préfixé directement.
Type: String
Défaut: null
waitforTimeout
Délai d'attente par défaut pour toutes les commandes waitFor*. (Notez le 'f' minuscule dans le nom de l'option.) Ce délai d'attente affecte uniquement les commandes commençant par waitFor* et leur temps d'attente par défaut.
Pour augmenter le délai d'attente d'un test, veuillez consulter la documentation du framework.
Type: Number
Défaut: 5000
waitforInterval
Intervalle par défaut pour toutes les commandes waitFor* pour vérifier si un état attendu (par exemple, la visibilité) a été modifié.
Type: Number
Défaut: 100
region
Si vous utilisez Sauce Labs, vous pouvez choisir d'exécuter des tests entre différents centres de données : US ou EU.
Pour changer votre région en EU, ajoutez region: 'eu' à votre configuration.
Remarque: Cela n'a d'effet que si vous fournissez des options user et key qui sont connectées à votre compte Sauce Labs.
Type: String
Défaut: us
(uniquement pour les vm et/ou em/simulateurs)
Options du Testrunner
Les options suivantes (y compris celles énumérées ci-dessus) sont définies uniquement pour l'exécution de WebdriverIO avec le testrunner WDIO :
specs
Définissez les spécifications pour l'exécution des tests. Vous pouvez soit spécifier un modèle glob pour correspondre à plusieurs fichiers à la fois, soit envelopper un glob ou un ensemble de chemins dans un tableau pour les exécuter au sein d'un seul processus de travail. Tous les chemins sont considérés comme relatifs au chemin du fichier de configuration.
Type: (String | String[])[]
Défaut: []
exclude
Exclure des spécifications de l'exécution des tests. Tous les chemins sont considérés comme relatifs au chemin du fichier de configuration.
Type: String[]
Défaut: []
suites
Un objet décrivant diverses suites, que vous pouvez ensuite spécifier avec l'option --suite sur l'interface de commande wdio.
Type: Object
Défaut: {}
capabilities
Identique à la section capabilities décrite ci-dessus, sauf avec la possibilité de spécifier soit un objet multiremote, soit plusieurs sessions WebDriver dans un tableau pour une exécution parallèle.
Vous pouvez appliquer les mêmes capacités spécifiques au fournisseur et au navigateur que celles définies ci-dessus.
Type: Object|Object[]
Défaut: [{ 'wdio:maxInstances': 5, browserName: 'firefox' }]
maxInstances
Nombre maximal total de travailleurs parallèles en cours d'exécution.
Remarque: qu'il peut s'agir d'un nombre aussi élevé que 100, lorsque les tests sont effectués sur certains fournisseurs externes tels que les machines de Sauce Labs. Là, les tests ne sont pas testés sur une seule machine, mais plutôt sur plusieurs machines virtuelles. Si les tests doivent être exécutés sur une machine de développement locale, utilisez un nombre plus raisonnable, comme 3, 4 ou 5. Essentiellement, c'est le nombre de navigateurs qui seront démarrés simultanément et qui exécuteront vos tests en même temps, donc cela dépend de la quantité de RAM disponible sur votre machine et du nombre d'autres applications en cours d'exécution sur votre machine.
Vous pouvez également appliquer maxInstances dans vos objets de capacités en utilisant la capacité wdio:maxInstances. Cela limitera le nombre de sessions parallèles pour cette capacité particulière.
Type: Number
Défaut: 100
maxInstancesPerCapability
Nombre maximum total de travailleurs parallèles en cours d'exécution par capacité.
Type: Number
Défaut: 100
injectGlobals
Insère les globaux de WebdriverIO (par exemple, browser, $ et $$) dans l'environnement global.
Si vous définissez à false, vous devriez importer depuis @wdio/globals, par exemple :
import { browser, $, $$, expect } from '@wdio/globals'
Remarque : WebdriverIO ne gère pas l'injection de globaux spécifiques au framework de test.
Type: Boolean
Défaut: true
bail
Si vous souhaitez que votre série de tests s'arrête après un nombre spécifique d'échecs de tests, utilisez bail.
(Par défaut à 0, ce qui exécute tous les tests quoi qu'il arrive.) Remarque : Un test dans ce contexte représente tous les tests dans un seul fichier de spécification (lors de l'utilisation de Mocha ou Jasmine) ou toutes les étapes dans un fichier de fonctionnalité (lors de l'utilisation de Cucumber). Si vous souhaitez contrôler le comportement de bail dans les tests d'un seul fichier de test, consultez les options framework disponibles.
Type: Number
Défaut: 0 (ne pas s'arrêter ; exécuter tous les tests)
specFileRetries
Le nombre de fois pour réessayer un fichier de spécification entier lorsqu'il échoue dans son ensemble.
Type: Number
Défaut: 0
specFileRetriesDelay
Délai en secondes entre les tentatives de fichier de spécification
Type: Number
Défaut: 0
specFileRetriesDeferred
Si les fichiers de spécification réessayés doivent être réessayés immédiatement ou reportés à la fin de la file d'attente.
Type: Boolean
Défaut: true
groupLogsByTestSpec
Choisissez la vue de sortie du journal.
Si défini sur false, les journaux de différents fichiers de test seront imprimés en temps réel. Veuillez noter que cela peut entraîner un mélange de sorties de journal provenant de différents fichiers lors de l'exécution en parallèle.
Si défini sur true, les sorties de journal seront regroupées par spécification de test et imprimées uniquement lorsque la spécification de test est terminée.
Par défaut, il est défini sur false, donc les journaux sont imprimés en temps réel.
Type: Boolean
Défaut: false
autoAssertOnTestEnd
Contrôle si WebdriverIO vérifie automatiquement toutes les assertions souples à la fin de chaque test. Lorsqu'il est défini sur true, toutes les assertions souples accumulées seront automatiquement vérifiées et causeront l'échec du test si des assertions ont échoué. Lorsqu'il est défini sur false, vous devez appeler manuellement la méthode d'assertion pour vérifier les assertions souples.
Type: Boolean
Défaut: true
services
Les services prennent en charge un travail spécifique dont vous ne voulez pas vous occuper. Ils améliorent votre configuration de test avec presque aucun effort.
Type: String[]|Object[]
Défaut: []
framework
Définit le framework de test à utiliser par le testrunner WDIO.
Type: String
Défaut: mocha
Options: mocha | jasmine
mochaOpts, jasmineOpts et cucumberOpts
Options spécifiques au framework. Voir la documentation de l'adaptateur du framework pour connaître les options disponibles. En savoir plus à ce sujet dans Frameworks.
Type: Object
Défaut: { timeout: 10000 }
cucumberFeaturesWithLineNumbers
Liste des fonctionnalités de cucumber avec numéros de ligne (lors de l'utilisation du framework cucumber).
Type: String[]
Défaut: []
reporters
Liste des rapporteurs à utiliser. Un rapporteur peut être soit une chaîne, soit un tableau de
['reporterName', { /* options du rapporteur */}] où le premier élément est une chaîne avec le nom du rapporteur et le second élément un objet avec les options du rapporteur.
Type: String[]|Object[]
Défaut: []
Exemple:
reporters: [
'dot',
'spec'
['junit', {
outputDir: `${__dirname}/reports`,
otherOption: 'foobar'
}]
]
reporterSyncInterval
Détermine à quel intervalle le rapporteur doit vérifier s'ils sont synchronisés s'ils rapportent leurs journaux de manière asynchrone (par exemple, si les journaux sont diffusés vers un fournisseur tiers).
Type: Number
Défaut: 100 (ms)
reporterSyncTimeout
Détermine le temps maximum dont disposent les rapporteurs pour terminer le téléchargement de tous leurs journaux jusqu'à ce qu'une erreur soit générée par le testrunner.
Type: Number
Défaut: 5000 (ms)
execArgv
Arguments Node à spécifier lors du lancement des processus enfants.
Type: String[]
Défaut: null
filesToWatch
Une liste de modèles de chaînes prenant en charge les glob qui indiquent au testrunner de surveiller d'autres fichiers, par exemple des fichiers d'application, lorsqu'il est exécuté avec le drapeau --watch. Par défaut, le testrunner surveille déjà tous les fichiers de spécification.
Type: String[]
Défaut: []
updateSnapshots
Définissez sur true si vous souhaitez mettre à jour vos instantanés. Idéalement utilisé dans le cadre d'un paramètre CLI, par exemple wdio run wdio.conf.js --s.
Type: 'new' | 'all' | 'none'
Défaut: none si non fourni et tests exécutés en CI, new si non fourni, sinon ce qui a été fourni
resolveSnapshotPath
Remplace le chemin d'instantané par défaut. Par exemple, pour stocker des instantanés à côté des fichiers de test.
export const config: WebdriverIO.Config = {
resolveSnapshotPath: (testPath, snapExtension) => testPath + snapExtension,
}
Type: (testPath: string, snapExtension: string) => string
Défaut: stocke les fichiers d'instantanés dans le répertoire __snapshots__ à côté du fichier de test
tsConfigPath
WDIO utilise tsx pour compiler les fichiers TypeScript. Votre TSConfig est automatiquement détecté à partir du répertoire de travail actuel, mais vous pouvez spécifier un chemin personnalisé ici ou en définissant la variable d'environnement TSX_TSCONFIG_PATH.
Consultez la documentation de tsx : https://tsx.is/dev-api/node-cli#custom-tsconfig-json-path
Type: String
Défaut: null
Hooks
Le testrunner WDIO vous permet de définir des hooks à déclencher à des moments spécifiques du cycle de vie du test. Cela permet des actions personnalisées (par exemple, prendre une capture d'écran si un test échoue).
Chaque hook a comme paramètre des informations spécifiques sur le cycle de vie (par exemple, des informations sur la suite de tests ou le test). En savoir plus sur toutes les propriétés des hooks dans notre exemple de configuration.
Remarque : Certains hooks (onPrepare, onWorkerStart, onWorkerEnd et onComplete) sont exécutés dans un processus différent et ne peuvent donc pas partager de données globales avec les autres hooks qui vivent dans le processus de travail.
onPrepare
Est exécuté une fois avant que tous les travailleurs ne soient lancés.
Paramètres :
config(object) : Objet de configuration WebdriverIOparam(object[]) : liste des détails des capacités
onWorkerStart
Est exécuté avant qu'un processus de travail ne soit généré et peut être utilisé pour initialiser un service spécifique pour ce travailleur ainsi que pour modifier les environnements d'exécution de manière asynchrone.
Paramètres :
cid(string) : id de capacité (par exemple 0-0)caps(object) : contenant les capacités pour la session qui sera générée dans le travailleurspecs(string[]) : spécifications à exécuter dans le processus de travailargs(object) : objet qui sera fusionné avec la configuration principale une fois que le travailleur sera initialiséexecArgv(string[]) : liste d'arguments de chaîne pass és au processus de travail
onWorkerEnd
Est exécuté juste après la sortie d'un processus de travail.
Paramètres :
cid(string) : id de capacité (par exemple 0-0)exitCode(number) : 0 - succès, 1 - échecspecs(string[]) : spécifications à exécuter dans le processus de travailretries(number) : nombre de nouvelles tentatives au niveau des spécifications utilisées comme défini dans "Ajouter des nouvelles tentatives sur la base d'un fichier de spécification"
beforeSession
Est exécuté juste avant l'initialisation de la session webdriver et du framework de test. Cela vous permet de manipuler les configurations en fonction de la capacité ou de la spécification.
Paramètres :
config(object) : Objet de configuration WebdriverIOcaps(object) : contenant les capacités pour la session qui sera générée dans le travailleurspecs(string[]) : spécifications à exécuter dans le processus de travail
before
Est exécuté avant le début de l'exécution du test. À ce stade, vous pouvez accéder à toutes les variables globales comme browser. C'est l'endroit idéal pour définir des commandes personnalisées.
Paramètres :
caps(object) : contenant les capacités pour la session qui sera générée dans le travailleurspecs(string[]) : spécifications à exécuter dans le processus de travailbrowser(object) : instance de la session du navigateur/appareil créée
beforeSuite
Hook qui est exécuté avant le démarrage de la suite (uniquement dans Mocha/Jasmine)
Paramètres :
suite(object) : détails de la suite
beforeHook
Hook qui est exécuté avant un hook dans la suite démarre (par exemple, s'exécute avant d'appeler beforeEach dans Mocha)
Paramètres :
test(object) : détails du testcontext(object) : contexte de test (représente l'objet World dans Cucumber)
afterHook
Hook qui est exécuté après qu'un hook dans la suite se termine (par exemple, s'exécute après avoir appelé afterEach dans Mocha)
Paramètres :
test(object) : détails du testcontext(object) : contexte de test (représente l'objet World dans Cucumber)result(object) : résultat du hook (contient les propriétéserror,result,duration,passed,retries)
beforeTest
Fonction à exécuter avant un test (uniquement dans Mocha/Jasmine).
Paramètres :
test(object) : détails du testcontext(object) : objet de portée avec lequel le test a été exécuté
beforeCommand
S'exécute avant l'exécution d'une commande WebdriverIO.
Paramètres :
commandName(string) : nom de la commandeargs(*) : arguments que la commande recevrait
afterCommand
S'exécute après l'exécution d'une commande WebdriverIO.
Paramètres :
commandName(string) : nom de la commandeargs(*) : arguments que la commande recevraitresult(*) : résultat de la commandeerror(Error) : objet d'erreur s'il y en a un
afterTest
Fonction à exécuter après la fin d'un test (dans Mocha/Jasmine).
Paramètres :
test(object) : détails du testcontext(object) : objet de portée avec lequel le test a été exécutéresult.error(Error) : objet d'erreur en cas d'échec du test, sinonundefinedresult.result(Any) : objet de retour de la fonction de testresult.duration(Number) : durée du testresult.passed(Boolean) : true si le test a réussi, sinon falseresult.retries(Object) : informations sur les nouvelles tentatives liées à un seul test comme défini pour Mocha et Jasmine ainsi que Cucumber, par exemple{ attempts: 0, limit: 0 }, voirresult(object) : résultat du hook (contient les propriétéserror,result,duration,passed,retries)
afterSuite
Hook qui est exécuté après la fin de la suite (uniquement dans Mocha/Jasmine)
Paramètres :
suite(object) : détails de la suite
after
Est exécuté après la fin de tous les tests. Vous avez toujours accès à toutes les variables globales du test.
Paramètres :
result(number) : 0 - test réussi, 1 - test échouécaps(object) : contenant les capacités pour la session qui sera générée dans le travailleurspecs(string[]) : spécifications à exécuter dans le processus de travail
afterSession
Est exécuté juste après la fin de la session webdriver.
Paramètres :
config(object) : Objet de configuration WebdriverIOcaps(object) : contenant les capacités pour la session qui sera générée dans le travailleurspecs(string[]) : spécifications à exécuter dans le processus de travail
onComplete
Est exécuté après l'arrêt de tous les travailleurs et juste avant la fin du processus. Une erreur lancée dans le hook onComplete entraînera l'échec de l'exécution du test.
Paramètres :
exitCode(number) : 0 - succès, 1 - échecconfig(object) : Objet de configuration WebdriverIOcaps(object) : contenant les capacités pour la session qui sera générée dans le travailleurresult(object) : objet de résultats contenant les résultats des tests
onReload
Est exécuté lors d'une actualisation.
Paramètres :
oldSessionId(string) : ID de session de l'ancienne sessionnewSessionId(string) : ID de session de la nouvelle session
beforeFeature
S'exécute avant une fonctionnalité Cucumber.
Paramètres :
uri(string) : chemin vers le fichier de fonctionnalitéfeature(GherkinDocument.IFeature) : Objet de fonctionnalité Cucumber
afterFeature
S'exécute après une fonctionnalité Cucumber.
Paramètres :
uri(string) : chemin vers le fichier de fonctionnalitéfeature(GherkinDocument.IFeature) : Objet de fonctionnalité Cucumber
beforeScenario
S'exécute avant un scénario Cucumber.
Paramètres :
world(ITestCaseHookParameter) : objet world contenant des informations sur pickle et test stepcontext(object) : Objet Cucumber World
afterScenario
S'exécute après un scénario Cucumber.
Paramètres :
world(ITestCaseHookParameter) : objet world contenant des informations sur pickle et test stepresult(object) : objet de résultats contenant les résultats du scénarioresult.passed(boolean) : true si le scénario a réussiresult.error(string) : pile d'erreur si le scénario a échouéresult.duration(number) : durée du scénario en millisecondescontext(object) : Objet Cucumber World
beforeStep
S'exécute avant une étape Cucumber.
Paramètres :
step(Pickle.IPickleStep) : Objet d'étape Cucumberscenario(IPickle) : Objet de scénario Cucumbercontext(object) : Objet Cucumber World
afterStep
S'exécute après une étape Cucumber.
Paramètres :
step(Pickle.IPickleStep) : Objet d'étape Cucumberscenario(IPickle) : Objet de scénario Cucumberresult: (object): objet de résultats contenant les résultats de l'étaperesult.passed(boolean): true si le scénario a réussiresult.error(string): pile d'erreur si le scénario a échouéresult.duration(number): durée du scénario en millisecondescontext(object): Objet Cucumber World
beforeAssertion
Hook qui est exécuté avant qu'une assertion WebdriverIO ne se produise.
Paramètres :
params: informations d'assertionparams.matcherName(string): nom du matcher (par exemple,toHaveTitle)params.expectedValue: valeur qui est passée au matcherparams.options: options d'assertion
afterAssertion
Hook qui est exécuté après qu'une assertion WebdriverIO s'est produite.
Paramètres :
params: informations d'assertionparams.matcherName(string): nom du matcher (par exemple,toHaveTitle)params.expectedValue: valeur qui est passée au matcherparams.options: options d'assertionparams.result: résultats de l'assertion