volver al menúGatsby logo

Configuración de Jasmine para Node.js

Para comenzar a utilizar Jasmine en tu proyecto Node.js, sigue estos pasos básicos:

  1. Agregar Jasmine a tu proyecto: Ejecuta el siguiente comando en la terminal para instalar Jasmine como dependencia de desarrollo:
  2.  npm install --save-dev jasmine
  3. Inicializar Jasmine en tu proyecto: Utiliza el siguiente comando para crear la configuración inicial de Jasmine en tu proyecto:
  4. npx jasmine init
  5. Crar la prueba: Una vez inicializado Jasmine, creará un directorio llamado "spec" en donde podemos crear las pruebas que después ejecutaremos. El archivo debe llamarse de la siguiente forma:
  6. nombre_prueba.spec.js
  7. Configurar Jasmine como tu script de pruebas: Añade el siguiente script a tu archivo package.json:
  8. 
                "scripts": {
                    "test": "jasmine"
                }
                
  9. Ejecutar tus pruebas: Utiliza el siguiente comando para ejecutar tus pruebas Jasmine:
  10.  npm test

Crear la prueba

La prueba se creara segun los criterios que se quieran validar.

Más Información

Para obtener información más detallada sobre Jasmine y sus características, consulta la documentación oficial de Jasmine.

Ejemplo utilizado

  • Mismo archivo en donde esta configurada la accion para ejecutar Jasmine, el archivo es pipeline.yml
  • Ahora creamos nuestra prueba, en nuestro caso validamos una suma
  • 
    describe("Test about dummy function", () => {
        it("should return a + b number", () => {
            const result = suma(4, 3);
            expect(result).toBe(7);
        });
        
        it("should fail", () => {
            const numberA = 5;
            const numberB = 6;
            const result = suma(numberA, numberB);
            expect(result).not.toEqual(14);
        })
    })
                        
  • Ejecutamos la suma
  • 
                    exports.suma = (a, b) => {
                        return a + b;
                    }
                    
  • Ahora intentemos hacer un commit, con nuestra prueba funcionando
  • commit_true
  • y un commit con falla, cambiando la operacion suma por resta
  • commit_false

    Como podemos observar estas pruebas son funcionales localmente, pero con github actions, workflows podemos automatizarlas en el lado de nuestro repositorio y poder tomar diferentes decisiones dependiendo del flujo de trabajo.

  • Veamos nuestra prueba en Jasmine ejecutandose en el repositorio
  • firstsecndthird
  • como podemos ver obtenemos el mismo resultado al ejecutarlo remotamente pero esta vez esta vinculado directamente al repositorio, por lo cual la prueba se ejecutara para todo el equipo de trabajo