Es genial que con Resharper 6 se puedan escribir pruebas de qunit y ejecutarlas con el rastreador de prueba de resharper integrado. Sin embargo, me pregunto si es posible establecer puntos de interrupción en las pruebas y el código bajo prueba. El problema es que, cada vez que abre el navegador, utiliza un número de puerto aleatorio diferente, lo que significa que no puede simplemente establecer puntos de interrupción en el navegador y volver a ejecutar las pruebas presionando F5. Entonces me pregunto, ¿es posible de alguna manera?¿Cómo puedo establecer puntos de interrupción en mis pruebas de qunit cuando uso el rastreador de prueba Resharper?
Respuesta
Lamentablemente, no es posible en este momento - ver this request. Lo que sugiero que hagas ahora mismo si necesitas depuración es usar QUnit canónicamente: crea una página HTML, suelta tus libs de JS, prueba y QUnit en ellas, y pon los elementos HTML de QUnit para mostrar los resultados. De esta forma, podrá establecer puntos de interrupción en JS.
Ah, yo no encontré este problema yo mismo. Sin embargo, lo voté ahora que sé que existe. – Christoph
Un enfoque más fácil usando Resharper y Visual studio.
Sólo hay que poner como su primera línea en el archivo JS:
QUnit.moduleDone = function() {}
La prueba ReSharper no va a terminar y se puede actualizar la página en el navegador tantas veces usted quiere. Puede poner un punto de interrupción y luego volver a ejecutar la prueba presionando F5 en el navegador.
Ejemplo:
En la parte superior de la página debe tener:
- sus primeras referencias
- QUnit.moduleDone = function() {};
este modo:!
/// <reference path="Scripts/jquery-ver**.min.js"/>
/// <reference path="Scripts/jquery-ui.min.js"/>
/// <reference path="your_test_file.js"/>
QUnit.moduleDone = function() {};
Esto funciona perfectamente)
En su navegador - simplemente pulse F12 (ventana del depurador abierto), establecer los puntos de interrupción y actualizar la página con F5))
¡Esta es una gran solución! Sin embargo, no sé cómo matar el servidor ... – Igal
puede matar el servidor haciendo clic en "detener la ejecución" (el icono de la señal de stop), luego "detener la ejecución" (el icono de la mano roja). –
Gracias, he creado algo similar para mis pruebas escritas con jasmine jasmine.currentEnv_.currentRunner_.finishCallback = function() {}; –
Si está utilizando Firefox con el plugin Firebug, puede hacer lo siguiente: agregar una declaración depurador a su código donde desea romper:
var x = 2;
debugger;
...
Establezca la opción Firebug 'Activo para todas las páginas web' en verdadero. En las opciones de ReSharper, Pruebas> JavaScript establece Firefox como el navegador que se usará (si no es el predeterminado).
Ahora el depurador Firebug se romperá en la declaración del depurador.
PD He intentado esto con Chrome pero no pude conseguir que se rompa. ¿Alguien sabe cómo hacerlo?
Lo mismo funciona en Chrome si tiene las herramientas de desarrollo ya abiertas. Si las herramientas de desarrollo aún no están abiertas, no se detendrá cuando llegue a 'depurador'. – elwyn
¡Gracias por el consejo! –
- 1. ¿Puedo establecer puntos de interrupción Firebug en jsFiddle?
- 2. Problema de Resharper con pruebas unitarias
- 3. Esperando en QUnit pruebas
- 4. Cómo establecer puntos de interrupción condicionales en Visual Studio?
- 5. Java establecer puntos de interrupción mediante programación
- 6. Los puntos de interrupción están tachados, ¿cómo puedo hacerlos válidos?
- 7. ¿Por qué duplican mis puntos de interrupción en Visual Studio?
- 8. ¿Cómo uso los puntos de interrupción en F # interactivo?
- 9. cómo establecer puntos de interrupción DOM en cromo
- 10. ¿Cómo puedo crear pruebas NUnit con ReSharper?
- 11. Falta Visual Studio/mover mis puntos de interrupción
- 12. No puedo depurar usando puntos de interrupción
- 13. Establecimiento de puntos de interrupción en Java
- 14. Puntos de interrupción páginas aspx
- 15. Excluyendo una prueba ScalaTest cuando llamo mis pruebas desde sbt
- 16. Cómo puedo establecer puntos de interrupción en un script JS externo en Firebug
- 17. Obtener QUnit para ejecutar pruebas en orden
- 18. No se pueden establecer puntos de interrupción en Eclipse
- 19. GoogleTest: cómo establecer un punto de interrupción?
- 20. Puntos de interrupción constantes? ¿Cómo eliminarlos?
- 21. clojurescript puntos de interrupción
- 22. ¿Por qué ya no puedo ejecutar pruebas unitarias desde el corredor de prueba de Resharper?
- 23. Cómo eliminar puntos de interrupción en XCode
- 24. QUnit con Ajax, QUnit aprueba las pruebas que fallan
- 25. Establecer puntos de interrupción y depurar JavaScript evaluado
- 26. qunit - mensaje de excepción de prueba?
- 27. ¿Cómo funcionan los puntos de interrupción en el código C++?
- 28. SIGTRAP a pesar de no establecer puntos de interrupción; punto de corte de hardware oculto?
- 29. Uso de qunit con aplicación web en iframe
- 30. Puntos de interrupción ininterrumpidas (puntos de rastreo) en Javascript?
Consulte mi respuesta a continuación sobre el uso de la declaración del depurador con Firefox + Firebug. –