Ejecutar nuestras pruebas web simulando diferentes navegadores

El proceso para simular diferentes navegadores pasa por grabar nuestro web tests y ejecutarlo como una una prueba de carga. Configuraremos la prueba de carga para que haga dos peticiones por cada. El wizard nos permite elegir que clientes queremos añadir. Por defecto aparecen IE x.x y FF 2.0 pero se pueden añadir los que se quieran, simplemente conociendo el User-Agent.

image

El proceso sería grabar una interacción usando IE y luego crear una prueba de carga que ejecute ese test tantas veces como diferentes navegadores queramos simular.

Otra opción es grabar el test desde Inernet Explorer y otro desde Firefox (o cualquier otro navegador).

Otra opción que es más compleja es añadir un header a las peticiones web y establecer el user-header y luego vincularlo a datos. El problema es que hay que hacerlo a mano para cada petición, aunque siempre se podría hacer una macro de Visual Studio.

clip_image004

También, lógicamente, se podría hacer un plugin de webtest que añadiese el header a cada petición. Un plugin de tipo WebTestRequest nos permite modificar las peticiones antes de enviarlas y añadir la cabecera (propiedad Headers) User-Agent que más nos convenga. Para ello usaríamos el módelo de objetos de plugins de pruebas web:

Por último otra opción sería generar el código de la prueba y cambiar la cabecera User-Agent nosotros desde el código de la prueba. Podemos modificar el método GetRequestEnumerator de la prueba web para añadir la cabecera User-Agent de los navegardores que nos interesen y devolver un objeto request adicional por cada navegador configurado con la cabecera adecuada. Añadir la cabecera en código es muy simple gracias a la clase WebTestRequestHeader.

WebTestRequest request1 = new WebTestRequest(“http://geeks.ms/“);
request1.Headers.Add(new WebTestRequestHeader(“User-Agent”, “”));

Hay que señalar que las pruebas web no ejecutan Javascript, por lo tanto la técnica aquí descrita sirve para probar diferencias en servidor derivadas de usar diferentes clientes, pero no para probar diferencias de comportamiento entre navegadores en lo que a la ejecución de Javascript se refiere.

2 comentarios en “Ejecutar nuestras pruebas web simulando diferentes navegadores”

  1. Rodrigo, estoy interesado en el tema ya que trabajo como tester funcional y realmente es un “dolor de cabeza” por no utilizar otros términos cuando hay que enfrentarse con requerimientos donde hay que probar con distintos navegadores e incluso con distintas versiones de ellos (IE 6, IE7, etc). Para llevar a cabo testeos exploratorios funcionales, ¿que software me recomendas? Por supuesto, en lo que pueda serte útil, contá conmigo. Gracias.

  2. Uff… GustavoT, la verdad es que no puedo recomendarte ninguna de manera clara, todas tienen sus pegas, lo mejor es que evalues algunas de las más populares. No te será dificil encontrar versiones demo en internet.

    ¡Un saludo!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *