JsTestDriver en NetBeans deja de probar después de una afirmación fallida

178

He configurado pruebas unitarias de JavaScript con JS Test Driver en Netbeans según este enlace . Sin embargo, a diferencia de los resultados en ese tutorial, no se ejecutan más pruebas después de que una aserción falla. ¿Cómo puedo cambiar este comportamiento?

Por ejemplo, dado este archivo de prueba:

El test.jsarchivo:

AssertionsTestCase = TestCase("AssertionsTestCase");

AssertionsTestCase.prototype.testAlwaysPass = function(){
  assertEquals(1, 1);
  assertEquals(2, 2);
};
AssertionsTestCase.prototype.testAlwaysFail1 = function(){
  assertEquals(1, 2);
};
AssertionsTestCase.prototype.testAlwaysFail2 = function(){
  assertEquals(3, 4);
};

la barra de progreso muestra 50%, (2 pruebas), debería decir 33%.

ingrese la descripción de la imagen aquí

El jsTestDriver.confarchivo:

server: http://localhost:42442
load:
  - test/lib/jasmine/jasmine.js
  - test/lib/jasmine-jstd-adapter/JasmineAdapter.js
  - test/unit/*.js

Puedo hacer que todas las pruebas se ejecuten por línea de comando. (En Windows PowerShell). Ejecutando de la siguiente manera, las pruebas no dejan de ejecutarse después de una falla:


java -jar $ env: JSTD \ JsTestDriver-1.3.5.jar --tests all --config jsTestDriver.conf

el jsTestDriver.confarchivo

server: http://localhost:4244
load:
  - test/lib/jasmine/jasmine.js
  - test/lib/jasmine-jstd-adapter/JasmineAdapter.js
  - test/unit/*.js

Las tres pruebas se ejecutan.

CL22
fuente
8
¿Lo probaste con otro navegador? Dado que funciona desde la línea de comandos, supongo que la falla es causada por netbeans o el navegador.
Silu
3
esto te ayudará? jazmín - stop-on-failure = false jasmine.github.io/2.5/node.html#section-21
Lucas
Tal vez los comentarios aquí pueden ayudar a stackoverflow.com/questions/22119193/…
Robert Fines
Creo que el manejo de pruebas de netbeans tiene errores, al menos con Mocha.
Duncan

Respuestas:

1

Parece que en Chrome funciona bien. ingrese la descripción de la imagen aquí

Con respecto a Firefox como en el comentario, dijo que no es la respuesta correcta. He logrado que funcione parcialmente. El problema es cómo netbeans manejan las pruebas fallidas y cómo se inicia jstestdriver.jar. Sé que esto no resuelve el problema, pero apunta en la dirección correcta.

ingrese la descripción de la imagen aquí

Pasos para reproducir esto.

  1. Inicie el controlador de prueba JS desde los servicios
  2. Ejecute la prueba.
  3. Ya que estoy usando Linux. He localizado jstestdriver.properties de la carpeta de configuración de Netbeans para el usuario actual. En mi caso se encuentra en

    /home/{user}/.netbeans/8.2/config/Preferences/org/netbeans/modules/javascript/jstestdriver.properties

    Edite la propiedad de ubicación agregando argumentos a jstestdriver.jar --tests all --reset. Después de editar mis propiedades se ve así.

    location=/home/user/Downloads/jstestdriver-1.3.5.jar --tests all --reset server.url=http://localhost:42442 strict.mode=false use.browser.ANDROID_DEVICE_CHROME=false use.browser.ANDROID_DEVICE_DEFAULT=false use.browser.ANDROID_EMULATOR_DEFAULT=false use.browser.Chrome=false use.browser.Chrome.INTEGRATED=false use.browser.SL__Browsers_FirefoxBrowser=true use.browser.SL__Browsers_MozillaBrowser=false

  4. Repite 2 veces.

    • Reinicie JS Test Driver desde Servicios.
    • Ejecute la prueba.

Después del segundo reinicio y ejecución, debe ejecutar todas las pruebas como se muestra en la imagen de arriba. Si puede agregar argumentos --tests all --reset para JS Test Driver en Netbeans, debería resolver el problema para que funcione como en Chrome.

exp2Tapavicki
fuente