Prova del mòdul
El mòdul de prova és un marc de prova. Combinat amb el mòdul d'afirmació, assert
es poden escriure fàcilment diversos casos de prova.
Introduir mòduls sovint requereix primeres fibjs
operacions :test
test setup
1
2var test = require('test');
test.setup();
Abans d'escriure casos de prova, normalment cal definir un mòdul de prova per descriure el contingut de la prova.
- descriure
describe és un contenidor per a tots els grups de proves, similar al concepte d'una suite de proves, i s'utilitza per it
ancorar proves a una categoria específica. Descriure pot contenir múltiples casos d'ús o altres subcategories representades per una descripció imbricada.
1describe(String name, Function block)
Paràmetres de trucada: nom: Cadena, definir bloc de nom del mòdul: Funció, codi d'inicialització del mòdul
- això
Representa un únic cas de prova i cada descripció només hauria de provar una única situació per garantir la fiabilitat dels resultats de la prova.
1it(String name, Function block)
Paràmetres de trucada: nom: cadena, definir el nom del projecte bloc: funció, contingut de prova
- xit&it.skip
Representa casos de prova omès.
1xit(String name, Function block)
Paràmetres de trucada: nom: cadena, definir el nom del projecte bloc: funció, contingut de prova
- oit & it.only
Indica que només s'executarà el cas de prova actual i s'ignoraran altres casos de prova perquè el cas de prova actual es pugui depurar per separat, la qual cosa és molt pràctic.
1
2oit(String name, Function block)
it.only(String name, Function block)
Paràmetres de trucada: nom: cadena, definir el nom del projecte bloc: funció, contingut de prova
- fer
Indica la necessitat de millorar encara més el pla de casos de prova.
1todo(String name, Function block)
Paràmetres de trucada: nom: cadena, definir el nom del projecte bloc: funció, contingut de prova
Quan escriu casos de prova, és habitual utilitzar-loassertMòdul d'asserció, comprova el retorn de la funció. Com utilitzar-lo:
1assert(condition, String message);
Entre ells, el primer paràmetre és la condició que cal afirmar, i el segon paràmetre és el missatge d'error.
objecte
assert
Afirma el mòdul de prova. Si el valor de la prova és fals, s'informarà d'un error. El comportament de l'informe d'errors es pot configurar per continuar executant-se o generar un error.
1assert test.assert;
funció estàtica
describe
Definiu un mòdul de prova, que es pot imbricar
1
2static test.describe(String name,
Function block);
Paràmetres de trucada:
- name: String, defineix el nom del mòdul
- block: Funció, codi d'inicialització del mòdul
xdescribe
Definició del mòdul per aturar les proves,test.setupA continuació, podeu utilitzar describe.skip per trucar
1
2static test.xdescribe(String name,
Function block);
Paràmetres de trucada:
- name: String, defineix el nom del mòdul
- block: Funció, codi d'inicialització del mòdul
odescribe
definicions de mòduls per a proves independents,test.setupA continuació, podeu utilitzar describe.only per trucar
1
2static test.odescribe(String name,
Function block);
Paràmetres de trucada:
- name: String, defineix el nom del mòdul
- block: Funció, codi d'inicialització del mòdul
it
Definir un projecte de prova
1
2static test.it(String name,
Function block);
Paràmetres de trucada:
- name: Cadena, defineix el nom del projecte
- block: Funció, contingut de prova
xit
Definició del projecte per aturar les proves,test.setupA continuació, podeu utilitzar-lo.skip per trucar
1
2static test.xit(String name,
Function block);
Paràmetres de trucada:
- name: Cadena, defineix el nom del projecte
- block: Funció, contingut de prova
oit
Definició del projecte per a proves independents,test.setupAleshores, podeu utilitzar-lo només per trucar
1
2static test.oit(String name,
Function block);
Paràmetres de trucada:
- name: Cadena, defineix el nom del projecte
- block: Funció, contingut de prova
todo
definició del projecte del pla,test.setupA continuació, podeu utilitzar it.todo per trucar
1
2static test.todo(String name,
Function block);
Paràmetres de trucada:
- name: Cadena, defineix el nom del projecte
- block: Funció, contingut de prova
before
Definiu l'esdeveniment d'entrada del mòdul de prova actual
1static test.before(Function func);
Paràmetres de trucada:
- func: Funció, funció d'esdeveniment
after
Definiu l'esdeveniment de sortida del mòdul de prova actual
1static test.after(Function func);
Paràmetres de trucada:
- func: Funció, funció d'esdeveniment
beforeEach
Definiu l'esdeveniment d'entrada del projecte de prova del mòdul de prova actual
1static test.beforeEach(Function func);
Paràmetres de trucada:
- func: Funció, funció d'esdeveniment
afterEach
Definiu l'esdeveniment de sortida del projecte de prova del mòdul de prova actual
1static test.afterEach(Function func);
Paràmetres de trucada:
- func: Funció, funció d'esdeveniment
mustCall
Comprova que una funció s'ha de cridar un nombre determinat de vegades
1static Function test.mustCall(Function func);
Paràmetres de trucada:
- func: Funció, la funció que s'està provant
Resultats de retorn:
- Function, retorna la funció embolicada
mustNotCall
Comprova que no s'ha de cridar una funció
1static Function test.mustNotCall(Function func);
Paràmetres de trucada:
- func: Funció, la funció que s'està provant
Resultats de retorn:
- Function, retorna la funció embolicada
Comprova que no s'ha de cridar una funció
1static Function test.mustNotCall();
Resultats de retorn:
- Function, retorna la funció embolicada
run
Comenceu a executar el mòdul de prova definit
1static Object test.run(Integer mode = console.ERROR);
Paràmetres de trucada:
- mode: Enter, especifica el mode de prova. En cas d'ERROR, la informació d'error del projecte es concentra i es mostra després de l'informe. Quan és inferior a ERROR, la informació de sortida es mostra en qualsevol moment. Quan és superior a ERROR, només es mostra l'informe. mostrat.
Resultats de retorn:
- Object, retorna els resultats de la prova
Un cop finalitzada la prova, es retornaran els resultats de la prova en el següent formulari:
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{
"total": 2, // number of total test cases
"pass": 2, // number of passed test cases
"fail": 0, // number of failed test cases
"skip": 0, // number of skipped test cases
"todo": 0, // number of todo test cases
"time": 0.000000, // time elapsed in seconds
"cases": [ // details of test cases
{
"name": "test", // name of test case
"time": 0.000000, // time elapsed in seconds
"result": true, // result of test case
"error": null // message of error if test case failed
},
{
"name": "sub cases", // name of sub test case
"total": 1, // number of total test cases
"pass": 1, // number of passed test cases
"fail": 0, // number of failed test cases
"skip": 0, // number of skipped test cases
"todo": 0, // number of todo test cases
"time": 0.000000, // time elapsed in seconds
"cases": [ // details of test cases
{
"name": "test", // name of test case
"time": 0.000000, // time elapsed in seconds
"result": true, // result of test case
"error": null // message of error if test case failed
}
]
}
]
}
setup
Inicieu l'entorn de prova de l'script actual i copieu el mètode del mòdul de prova com a variable global de l'script actual
1static test.setup();
propietats estàtiques
slow
Enter, establiu i consulteu el llindar d'avís de prova lenta, en ms, el valor predeterminat és 75
1static Integer test.slow;