Module module de base

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 82
var 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

1
assert test.assert;

Fonction statique

describe

Définir un module de test, peut être une définition imbriquée

1 2
static 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 2
static 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 2
static 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 2
static 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 tests,test.setup Ensuite, vous pouvez l'utiliser.skip pour appeler

1 2
static 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 2
static 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

1
static 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

1
static 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

1
static 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

1
static test.afterEach(Function func);

Paramètres d'appel :

  • func: fonction, fonction événement

run

Commencer à exécuter le module de test défini

1
static 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 mauvais nombre s'il est incorrect

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

1
static 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

1
static Integer test.slow;