2215019 Jasmine ml
Jasmine
Caracteristicas
* Posee una sintaxis muy clara
+ Funciones que permiten la escritura mas facil
* Cada test creado por el usuario es una funcién.
Conjunto de funciones
Suites
Describe a qué geneto o seccién se va a pasar por un conjunto de pruebas unitarias
Describes
Funcién global y es con la que se inicia toda prueba unitara, tiene dos parémetros y la sintaxis es:
describe ("", function () {})5
Donde el primer pardmetro es una cadena de caracteres donde se define el nombre de la prueba unitara, y el
segundo parémetro es una funcién deonde esta el cédigo que ejecutaré la prueba de cédigo.
Sepec
Son afirmaciones que pueden ser ciertas o falsas dependiendo de cual resultado el programador espere en la prueb
Unitaria,
Expectations
Son construidas con la funcién expect, el cual toma el valor actual, ese valor esté enlazado con la funcién matcher
(inglés), que toma el valor esperado. La sintaxis es:
expect (valor actual).matchers(valor esperado)
generated by haroopad
filestc:/SIASWIDocumentos/2017/Documentosiectua/Calidad do Softwarajasminehm! 42215019 Jasmine ml
Matchers
Son funciones que implementan comparaciones booleanas entre el valor actualy el esperado, son los responsable de
indicar si la expectativa es verdadera o falsa. Los matches mas comunes son:
+ expect(x).toEqual(y): Verifica si ambos valores son iguales.
+ expect(x).toBe(y): Verfica si ambos objetos son iguales.
+ expect(x).toMatch(pattern): Verifica si el valor pertenece al patrén establecido.
* expect(x).toBeDefined(): Verifica si el valor estd definido.
+ expect(x).toBeNulll): Verifica si el valor es nul
+ expect(x).toBeTruthy(): Verifica si el valor es verdadero.
+ expect(x).toBeFalsy(): Verifica si el valor es falso.
+ expect(x).toContain(y): Verifica si el valor actual contiene el esperado.
* expect(x).toBeLessThan(y): Verifica si el valor actual es menor que el esperado.
+ expect(x).toBeGreaterThan(y): Verifica si el valor actual es mayor que el esperado.
“"*Inportante:***
Agrupar "spec" mediante "describe"
‘Se puede agrupar muchos “specs” dentro de un “describe”
A continuacién se escribe un ejemplo:
Ejemplo1
describe(“Operaciones aritméticas", fucntion(){
it("adicion", function(){
var suma = 1433
expect (suma). toEqual (4);
D3
it("resta", function(){
var resta = 21;
expect (resta).toBeLessThan(4);
D3
it("multiplicacion", function(){
var multiplicacion = 2*10;
expect (miltiplicacion) .toBeGreaterThan(9);
D3
it("division", function(){
var division = 15+3;
expect (division) toEqual(5);
D3
v
generated by haroopad
{les1@/SIASWIDocumentos/2017/Documentosi.ecturaCalidd de Sotwarajasmine him! 2152215019 Jasmine ml
Organizaciones (“Setup”) y Desmontar (“Teardown’)
Nos ayuda a evitar la duplicidad de cédigo y mantener variables inicializadas en un solo lugar, ademas de mantener la
modularidad,
beforeEach
Se ejecuta antes de cada spec dentro del describe
afterEach
Se ejecuta después de cada sepe dentro del describe
Se muestra un ejemplo de lo anterior:
describe(“Operaciones Aritméticas", function()
var sua;
var resta;
var multiplicacion;
var division;
beforeEach(function(){
suma = 1+ 35
resta
+h
multiplicacion = 2 * 10;
division = 15 + 3;
D3
afterach(function(){
suma = 05
resta =
multiplicacion = @;
division = @;
ds
it("adicion", function(){
expect (suma). toEqual (4);
ds
it("resta", function(){
expect(resta).toBeLessThan(4);
ys
it("multiplicacion", function(){
expect (multiplicacion) . toBeGreaterThan(2) ;
flo:iCxSIASWiDaeumontos/2017/Documentos.ectua/Galidad de Sotwaraljasminetnl
generated by haroopad
a5