usar unitarias pruebas karma con como jasmine

jasmine - unitarias - Detener la prueba de jazmín después de la primera espera falla



jasmine github (3)

Estoy familiarizado con las pruebas de pruebas unitarias de Python, donde si una afirmación falla, esa prueba se marca como "fallida" y pasa a otras pruebas. Jasmine, por otro lado, continuará con todas las expectativas, incluso si una de ellas falla. ¿Cómo puedo hacer que Jasmine deje de procesar una prueba después de que la primera expectativa falla?

it ("shouldn''t need to test other expects if the first fails", function() { expect(array.length).toBe(1); // don''t need to check this if the first failed. expect(array[0]).toBe("foo"); });

¿Estoy pensando mal? Tengo algunas pruebas con muchas expect y parece un desperdicio mostrar todas las huellas de la pila cuando solo la primera está realmente equivocada.



Jasmine no admite fallas tempranas, en una sola especificación. La idea es darte todas las fallas en caso de que eso te ayude a descubrir qué es lo que realmente está mal en tu especificación.


La respuesta de v2.0.0 fue correcta para la última versión de Jasmine en ese momento ( v2.0.0 ).

Sin embargo, desde entonces, esta nueva característica se added en v2.3.0 :

Permitir al usuario detener una ejecución de especificaciones cuando falla una expectativa (Correcciones #577 )

Se activa agregando throwFailures=true a la cadena de consulta de la página del corredor, por ejemplo:

http://localhost:8000/?throwFailures=true