Test des modules
Module de suite de tests pour définir et gérer une suite de tests
Instructions:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82var test = require('test');
test.setup();
describe('test', () => {
before(() => {
// setup before the whole test
});
beforeEach(() => {
// setup before each test
});
after(() => {
// cleanup after the whole test
});
afterEach(() => {
// cleanup after each test
});
it('case', () => {
assert.ok(true);
});
// ignored test case
xit('case', () => {
assert.ok(true);
});
// ignored test case
it.skip('case', () => {
assert.ok(true);
});
// only test case
oit('case', () => {
assert.ok(true);
});
// only test case
it.only('case', () => {
assert.ok(true);
});
});
// async function test
describe('test async', () => {
it('pass case', async () => {
assert.ok(true);
});
it('error case', async () => {
throw new Error('some thing wrong!');
});
});
// callback function test
// cannot use callback mode in jsc
describe('test callback', () => {
it('pass case', done => {
setTimeout(() => {
assert.ok(true);
done();
}, 0);
});
it('error case', done => {
setTimeout(() => {
done(new Error('some thing wrong!'));
}, 0);
});
it('check in done', done => {
setTimeout(() => {
done(() => {
assert.ok(true);
});
}, 0);
});
});
process.exit(-test.run(console.DEBUG));
Objet
assert
Affirmez le module de test, si la valeur de test est fausse, une erreur sera signalée et le comportement d'erreur peut être défini pour continuer à s'exécuter ou générer une erreur
1assert test.assert;
Fonction statique
describe
Définir un module de test, peut être une définition imbriquée
1
2static test.describe(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du module
- block: Fonction, code d'initialisation du module
xdescribe
La définition du module pour suspendre les tests,test.setup Ensuite, vous pouvez utiliser describe.skip pour appeler
1
2static test.xdescribe(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du module
- block: Fonction, code d'initialisation du module
odescribe
Définition de module pour des tests indépendants,test.setup Vous pouvez utiliser describe.only pour appeler plus tard
1
2static test.odescribe(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du module
- block: Fonction, code d'initialisation du module
it
Définir un projet de test
1
2static test.it(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du projet
- block: Fonction, contenu du test
xit
La définition du projet de suspension des essais,test.setup Il peut être appelé plus tard en utilisant it.skip
1
2static test.xit(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du projet
- block: Fonction, contenu du test
oit
Définition de projet pour des tests indépendants,test.setup Il peut être appelé plus tard en l'utilisant.
1
2static test.oit(String name,
Function block);
Paramètres d'appel :
- name: String, définit le nom du projet
- block: Fonction, contenu du test
before
Définir l'événement d'entrée du module de test en cours
1static test.before(Function func);
Paramètres d'appel :
- func: fonction, fonction événement
after
Définir l'événement de sortie du module de test en cours
1static test.after(Function func);
Paramètres d'appel :
- func: fonction, fonction événement
beforeEach
Définir l'événement d'entrée d'élément de test du module de test actuel
1static test.beforeEach(Function func);
Paramètres d'appel :
- func: fonction, fonction événement
afterEach
Définir l'événement de sortie du projet de test du module de test en cours
1static test.afterEach(Function func);
Paramètres d'appel :
- func: fonction, fonction événement
run
Commencer à exécuter le module de test défini
1static Integer test.run(Integer loglevel = console.ERROR);
Paramètres d'appel :
- loglevel: Entier, spécifiez le niveau de sortie du journal pendant le test. En cas d'ERREUR, les informations d'erreur du projet seront affichées après le rapport. Lorsqu'il est inférieur à ERREUR, les informations de sortie seront affichées à tout moment. Lorsqu'il est supérieur à ERREUR, seul le rapport sera affiché.
Résultat de retour :
- Integer, Renvoie les résultats statistiques des cas de test, renvoie 0 s'il est correct et renvoie le nombre d'erreurs s'il est erroné
setup
Initialiser l'environnement de test du script en cours, copier la méthode du module de test dans la variable globale du script en cours
1static test.setup();
Propriétés statiques
slow
Entier, définir et interroger le seuil d'avertissement de test lent, en ms, la valeur par défaut est 75
1static Integer test.slow;