Par défaut, Mocha lit un fichier nommé test/mocha.opts
qui peut contenir des arguments de ligne de commande. Vous pouvez donc créer un tel fichier contenant:
--timeout 5000
Chaque fois que vous exécutez Mocha sur la ligne de commande, il lira ce fichier et définira un délai d'expiration de 5 secondes par défaut.
Une autre façon qui peut être meilleure en fonction de votre situation est de le définir comme ceci dans un describe
appel de niveau supérieur dans votre fichier de test:
describe("something", function () {
this.timeout(5000);
// tests...
});
Cela vous permettrait de définir un délai d'expiration uniquement sur une base par fichier.
Vous pouvez utiliser les deux méthodes si vous voulez une valeur par défaut globale de 5000 mais définir quelque chose de différent pour certains fichiers.
Notez que vous ne pouvez généralement pas utiliser une fonction de flèche si vous allez appeler this.timeout
(ou accéder à tout autre membre de this
cet ensemble Mocha pour vous). Par exemple, cela ne fonctionnera généralement pas :
describe("something", () => {
this.timeout(5000); //will not work
// tests...
});
C'est parce qu'une fonction de flèche prend this
de la portée dans laquelle la fonction apparaît. Mocha appellera la fonction avec une bonne valeur pour this
mais cette valeur n'est pas passée à l'intérieur de la fonction de flèche. La documentation de Mocha dit à ce sujet :
Il est déconseillé de passer des fonctions fléchées («lambdas») à Mocha. En raison de la liaison lexicale de ceci, ces fonctions ne peuvent pas accéder au contexte Mocha.