Laboratorio de pruebas de Internet Explorer

Son muchos los blog que hablan del lanzamiento de Windows 8, de fechas, de nuevas funcionalidades, utilización de Metro, etc, etc, pero cual si no el propio blog de desarrollo de Windows 8 para conocer más sobre cómo trabajan los chicos de Redmon. Y es a través de este blog donde descubrimos el laboratorio de pruebas que han montado para testear la nueva versión de Internet Explorer.

Su objetivo es claro, “desarrollar el navegador más rápido del mundo” y para eso hay que trabajar duro, sobre todo conociendo la fuerte competencia que Chrome le está aplicando.

La infraestructura:

Hay que tener en cuenta que este tipo de producto (software soporte) puede ser ejecutado en equipos y condiciones tan diferentes como podamos imaginar, por lo que deben ser capaces de simular estas situaciones. Para ello, se apoyan en  Windows Performance Tools (WPT) y una arquitectura lo más parecida a la red real. Utilizan unas 140 máquinas entre servidores webs, servidores de DNS, routers, simuladores de red, etc. Durante unas 6 horas de pruebas se pueden llegar a generar 22Gb de datos, con una precisión en las medidas de tiempo de 100 nanosegundos.

Para la parte cliente, y teniendo en cuenta la gran variedad de dispositivos que utlizan IE, el laboratorio dispone de unas 120 máquinas, potentes equipos de escritorio x64, netbooks, tablets, etc. Y estos no son simulados, sino reales como los que tu puedes comprar. Estos equipos están organizados en pool, facilitando el trabajo de mantenimiento, gestión y configuración.

Análisis de los datos:

En testing, la recolección de datos es solo una parte de todo el proceso. No nos vale tener gigas y gigas de datos, si no podemos procesarlos y analizarlos adecuadamente. En este laboratorio, todos los datos son inspeccionados y de ellos se extraen miles de métricas, que son almacenadas en un servidor SQL. Cada 24 horas se examinan alrededor de 15.000 trazas.

Eligiendo las métricas:

Centrados en el uso real que generarán los usuarios finales, unos 20.000 test se clasifican según cuatro categorías:

  • Carga de contenido: navegacion entre distintas webs, esto incluye el chequeo de los 11 subsistemas
  • Aplicaciones web interactivas: interacción con otras apps, ajax, etc.
  • Internet Explorer: funcionalidad propia de la aplicación, configuración, opciones, plugins
  • Benchmarks: WebKit, SunSpider, …

Para que las métricas obtenidas ofrezcan valores representativos y reales, es necesario seguir un modelado de carga de trabajo, por ello, en el laboratorio de pruebas de Internet Explorex utilizan web’s reales recabadas directamente de la red. Para ordenar y clasificar estas, emplean diferentes puntos de análisis: DOM, capas CSS, framework de despliegue, …

Finalmente, queda definir de entre todas las métricas obtenidas (alrededor de 850) cuales de ellas reflejarán de una manera clara y directa la calidad del producto. Y las elegidas son:

  • Display time: tiempo que pasa desde que el usuario solicita una acción hasta que el sistema responde
  • Elapsed time: gestión de las tareas en segundo plano. Estas no deben afectar al correcto comportamiento de las actividades principales
  • CPU time: gestión de uso del procesador. Para liberar a este, muchos navegadores emplean la GPU para numerosos cálculos (rendering)
  • Resource utilization: consumo de recursos de procesador, gráficos, memoria, red, …
  • Power consumition: eficiencia de uso de energía, especialmente enfocada a dispositivos móviles

Escenarios de test

Y todo esto no serviría de nada si no se tiene definido un buen flujo de trabajo. Más abajo vemos el diagrama de flujo que se sigue, además, pueden distinguirse las siguientes tres fases: configuración, testing y gestión de errores.

Esquemáticamente, se podrían identificar los siguientes pasos:

  • Solicitud de ejecución de test en el laboratorio de pruebas
  • Según su prioridad, se inserta en la posición correcta de la cola de trabajos
  • Se instala el SO definido en el mismo, de este modo siempre se trabajará sobre un entorno limpio y conocido
  • Se instalan los complementos y configuran los elementos de test necesarios (WTP, VMMap, IEsettings, …)
  • Se detienen los procesos programados para ejecutarse en background como desfragmentación de disco, actualización de indices, …
  • Ejecución del test
  • Finalizado el test, si este es satisfactorio, se vuelcan los logs obtenidos al servidor de log para un posterior análisis.
  • El cliente es liberado y puesto a disposición de nuevos test

Análisis de resultados

Los test son lanzados minimo 10 veces y las ejecuciones duplicadas al menos sobre dos máquinas distintas. Basandose en estadísticas, se pueden hacer una idea de la evolución de la calidad, pero aún automatizando gran parte del proceso, no se pueden eliminar los análisis manuales. Los usuarios de IE lo usan en muy diferentes entornos y en muy diferentes circustancias, por ello, los datos deben ser estudiados de acuerdo al escenario y circustancias en los que han sido obtenidos.

                                                                                                                                                

Fuente: http://blogs.msdn.com

Autores originales: Matt Kotsenas, Jatinder Mann y Jason Weber

Comentarios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s