Testing with Jest Karma Jasmine Mocha Chai

Escribir la matriz de pruebas, desarrollar las pruebas unitarias basados en esa matriz y, posteriormente, ejecutar las pruebas, nos ayudará a comprobar que nuestra aplicación funciona correctamente.

Jasmine

Es un framework basado en el comportamiento para probar código. Funciona en modo standalone en el navegador, con Ruby, con Python y, por supuesto, en NodeJs.

Para instalarlo en nuestro proyecto:

npm install --save-dev jasmine

Agregar/Inicializar configuración:

Esto generará el archivo spec/support/jasmine.json

./node_modules/.bin/jasmine init

Modificar el archivo package.json y agregar el script de pruebas:

"scripts": {
    "test": "jasmine"
  }

Se pueden crear ejemplos de pruebas mediante:

./node_modules/.bin/jasmine examples

Ejecutar pruebas mediante NPM y el script test:

npm test

Para crear nuestra primera prueba, debemos crear un archivo dentro del directorio "spec", el sufijo y la extensión deben ser "spec.js" o "Spec.js".

Ejemplo del archivo "spec/tests/prueba1Spec.js"

describe("Mi grupo de pruebas", function() {
  it("Si verdadero es igual a verdadero:", function() {
    expect(true).toBe(true);
  });
  
  it("Si verdadero es igual a falso:", function() {
    expect(true).toBe(false);
  });
});

Volvemos a ejecutar la prueba:

npm test

El resultado de la prueba será:

> jasmine-test1@1.0.0 test ~\jasmine-test1
> jasmine

Started
......F

Failures:
1) Mi grupo de pruebas Si verdadero es igual a falso:
  Message:
    Expected true to be false.
  Stack:
    Error: Expected true to be false.
        at Object. (~\jasmine-test1\spec\tests\prueba1Spec.js:7:18)

7 specs, 1 failure
Finished in 0.017 seconds

npm ERR! Test failed.  See above for more details.

Karma

Referencias