Karma.js, el concepto de Test Runner

Karma.js, el concepto de Test Runner
Sin comentarios Facebook Twitter Flipboard E-mail

Conceptos como TDD o BDD se están haciendo hueco dentro de las metodologías de desarrollo. Cada día aparecen más soluciones orientadas a ellos. Una de estos tipos de soluciones es Karma.js. Karma se encarga de ejecutar los test de Javascript según se vayan construyendo, de tal forma que ante cualquier fallo el desarrollador se dará cuenta de inmediato.

Instalando Karma.js

Para instalar Karma.js necesitaremos tener instalado Node.js y usar su gestor de packages para instalar los siguientes módulos.

npm install karma
npm install karma-cli

Una vez realizada la instalación hay que ejecutar el comando karma init desde la consola.

karma init

Este comando solicitará una serie de información asignando un valor por defecto. Es posible aceptar todos los parámetros exceptuando la carpeta en la cual se almacenan los test .

Jasmine5

Karma.js se configura con Jasmine.js como framework de testing salvo que se decida lo contrario. Definida la carpeta de los test, el siguiente paso es construir varios. Para ello nos apoyaremos en los propios ejemplos de Jasmine.

describe("Ejemplo test", function() {
  it(" matcher verdadero", function() {
    expect(true).toBe(true);
  });

});

Construido el primer test y salvado es momento de arrancar Karma.js a traves del comando:

karma start
Jasmine2

Se puede observar como el primer test se ejecuta correctamente. Añadimos un nuevo test y salvamos.

describe("Ejemplo test", function() {
  it(" matcher verdadero", function() {
    expect(true).toBe(true);
  });

    it("matcher no verdadero", function() {
    expect(false).not.toBe(true);
  });
});

Al salvar el fichero, Karma.js se dará cuenta de los cambios y volverá a ejecutar la batería de test.

Jasmine3

Ambos test se ejecutan correctamente, es momento de añadir un último que falle.

describe("Ejemplo test", function() {
  it(" matcher verdadero", function() {
    expect(true).toBe(true);
  });

    it("matcher no verdadero", function() {
    expect(false).not.toBe(true);
  });

     it(" matcher verdadero falla", function() {
    expect(false).toBe(true);
  });
});

Al salvar el fichero Karma.js lo ejecutará y se podrá ver que rapidamente el error.

Jasmine4

Poco a poco estas herramientas se están haciendo un hueco en el universo de Javascript.

En GenBeta Dev | Empezando con Angular 2

Comentarios cerrados
Inicio