unitarios unitarias tutorial test que pruebas nodejs node espaƱol javascript unit-testing jasmine jasmine-jquery

unitarias - BeforeAll y AfterAll en casos de prueba de JavaScript



que es jest js (4)

Quiero hacer algo antes de todas las pruebas, ¿luego? ¿Cuál es la mejor manera de organizar mi código? Por ejemplo: hacer una copia de seguridad de algunas variables -> borrarlas -> probar algo -> restaurar copias de seguridad. ''antes de cada'' y ''después de cada'' son demasiado caros. ¡Gracias!


Una solución bastante simple:

describe("all o'' my tests", function() { it("setup for all tests", function() { setItUp(); }); describe("actual test suite", function() { }); it("tear down for all tests", function() { cleanItUp(); }); });

Esto tiene la ventaja de que realmente puede poner su configuración / desmontaje en cualquier lugar (por ejemplo, al principio / al final de un conjunto anidado).


Jasmine proporciona opciones para escribir tu propio reportero y adjuntarlo. Para implementar un reportero, existen callbacks básicos como initialize , jasmineStarted y jasmineDone . Con esto puedes lograr tu requerimiento. Por ejemplo, en Jasmine 2.0, consulte el archivo jasmine-html.js para tener una comprensión básica.


Llamar a una función antes de que comiencen todas las pruebas es trivial; sin embargo, Jasmine (1.3.1, al menos) no le permite especificar su propia devolución de llamada final fuera de la API del reportero.

Aquí hay un pequeño truco rápido que encontré en Grupos de Google . Agregue esto a su SpecRunner.html o equivalente.

var oldCallback = jasmineEnv.currentRunner().finishCallback; jasmineEnv.currentRunner().finishCallback = function () { oldCallback.apply(this, arguments); // Do your code here }; jasmineEnv.execute();


Jasmine> = 2.1 admite beforeAll / afterAll para realizar configuraciones únicas y desmontables para su suite.

Si está utilizando Jasmine 1.x, puede usarlo para eso (como lo sugirieron otros) o cargar un node_module que admita beforeAll / afterAll, por ejemplo jazmín antes de todo .