Pregunta

Tengo un archivo JavaScript bastante horrible y grande que heredé de un desarrollador que odio. Hay un montón de código muerto, y creo que he pasado mucho tiempo refactorizando funciones que ni siquiera se llaman.

Idealmente, solo quiero algo que pueda vincularse con el motor js y realizar un seguimiento de cuándo y cuántas veces se llaman las funciones.

En FF, puedo obtener una lista de las funciones recorriendo el objeto de la ventana, y envolverlas dinámicamente en un método que les registre la llamada, y luego llamar a la función normalmente.

Desafortunadamente, en IE, no puedo usar esto ya que parece que no puedo encontrar una manera de obtener una lista de todas las funciones que se han cargado. Y no puedo ejecutar esta aplicación en FF, ya que es terriblemente específica del navegador. En el último recuento había 138 líneas que contenían " nuevo ActiveXObject (...) "

Ayuda, ya sea con una herramienta que pueda hacer esto, o al menos, una forma de obtener una lista de las funciones que IE7 ha cargado desde el script del usuario.

Gracias -c

¿Fue útil?

Solución

Pruebe JSCoverage .

  

JSCoverage es una herramienta que mide   cobertura de código para programas de JavaScript.

     

JSCoverage funciona al instrumentar el   Código JavaScript utilizado en páginas web.   Se recopilan estadísticas de cobertura de código   mientras que el código JavaScript instrumentado   se ejecuta en un navegador web.

La instrumentación se puede hacer sobre la marcha si configura el servidor JSCoverage para que se ejecute como un proxy HTTP y configure su navegador para que lo atraviese.

Una forma de usarlo es:

  1. Inicie JSCoverage Server en modo proxy:
jscoverage-server --proxy --verbose
  1. Configure su navegador para que use localhost: 8080 como el proxy HTTP.
  2. Agregue el siguiente marcador, asegurándose de que la ruta relativa a jscoverage sea correcta:
javascript:void(window.open('jscoverage/jscoverage.html'))
  1. Ejecute sus pruebas.
  2. Ejecute el marcador. Aparecerá una nueva ventana que le mostrará los resultados de la cobertura.

Otros consejos

Hay una extensión Firebug para la cobertura de código JS ...

FirebugCodeCoverage 0.1 ( https://addons.mozilla.org/en- US / firefox / addon / 4837 )

Desafortunadamente, actualmente no está actualizado para la última versión de FF.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top