iWebInspector: Inspector Web Remoto Real

iWebInspector: Inspector Web Remoto Real
Facebook Twitter Flipboard E-mail

Hace sólo unos días presentábamos Weinre como una solución casi perfecta para poder inspeccionar y "debugar" Javascript y HTML ejecutándose en navegadores o soluciones basadas directa o indirectamente en Webkit.

Weinre, tal como contábamos, es una solución muy útil y que a mi personalmente me ha ahorrado muchos dolores de cabeza. Pero tiene dos puntos importantes a tener en cuenta:

  • Hace inyección de código, lo cual quiere decir que la aplicación que se monitoriza está alterada respecto a la que el desarrollador ha creado. Esto no tendría que suponer ningún problema pero podría darse el caso en el que el código inyectado por Weinre alterara el comportamiento inherente de la aplicación bajo testeo.

  • Weinre, aún y estar basado en el Remote Web Inspector de Webkit, no permite añadir breakpoints en el código Javascript ni realizar sesiones de Profiling. El principal motivo de esto es que los navegadores no definen los hooks necesarios para llevar a cabo estas tareas.

Justo la semana pasada, Nathan de Vries, dió con una API privada que permite la activación de debug remoto y que permitiría añadir breakpoints y llevar a cabo sesiones de profiling en navegadores mobile basados en Webkit.

iWebInspector, desarrollodo por Maximiliano Firtman es lo que podríamos ver como la evolución y solución a los puntos mencionados arriba. iWebInspector utiliza las APIs privadas que activan el debug remoto permitiendo así su uso en aplicaciones web que corran en Safari, en aplicaciones a pantalla completa o en aplicaciones que usan indirectamente UIWebView (i.e. PhoneGap).

El único inconveniente que tiene hoy por hoy iWebInspector es que sólo permite la instrumentación de aplicaciones ejecutándose en el simulador (iPhone o iPad). La limitación recae en no poder acceder al puerto de debug de Safari. Con suerte la solución vendrá de la mano de Apple y Android permitiendo activar un modo debug en el navegador. Las implicaciones de abrir este puerto, entre otras, podrían ser posibles vulnerabilidades de seguridad al permitirse indirectamente la inyección de código. Pero dada la gran importancia de esta topología de herramientas seguro que bien pronto llegará una buena solución.

Podríamos considerar el remote debugging un trending topic de la comunidad. Dejo aquí referencias o otras soluciones que han ido apareciendo:

Más información | iWebInspector En Genbeta Dev | Weinre

Comentarios cerrados
Inicio