Mitos sobre Performance Testing – Parte 2


Continuando con el tema de los mitos, dejo algunos mas que pude encontrar por la red o que escuche por ahí.

7- Performance Testing se debe hacer en todos los Workflows de la aplicación, para identificar todos los problemas de rendimiento.

Veredicto: Falso

Las pruebas de Performance se realizan solo sobre un grupo de escenarios basandonos en su frecuencia de uso, son importantes para el usuario final (son críticos al momento de la utilización de la aplicación, como ver opciones de seguros disponibles para poder venderlos por teléfono, el telemarketer necesita rápidamente la información para no hacer esperar al cliente en el teléfono) y los escenarios propensos a tener baja performance (como consultas a base de datos).

8- El Tiempo de Respuesta (Response Time) objetivo debe basarse en los estándares de la industria.

Veredicto: Falso

Primero que no hay estándar que defina el tiempo de respuesta. Segundo que el tiempo de respuesta de una aplicación es algo totalmente subjetivo va a depender muchísimo de la actitud del usuario frente a este. En los ’90 se hablaba de tiempos de respuesta que llevaban a una persona abandonar o seguir en un sitio web, pero era algo muy poco especifico. Pongamos un ejemplo, supongamos que alguien que tiene acceso a Banda Ancha y ya esta acostumbrado a recorrer ciertos sitios web (lo viene haciendo desde hace años) y esta tarea no le lleva mas de 2 minutos como mucho, es decir, se informa de todo lo que le interesa en 2 minutos; esta persona se va a visitar a
su abuela o madre que vive en una zona donde no llega banda ancha y tiene conexión telefónica, la madre o abuela va a estar acostumbrada a esperar frente a la pc o va a tener hábitos de hacer otra cosas mientras navega por internet, pero su nieto o hijo va a tener un ataque de pánico al tener que esperar 2 minutos quizás para solo cargar la primer pagina con la cual el se informa.
También podríamos comparar actitudes de personas con diferentes culturas y llegaríamos a la misma conclusión: El tiempo de respuesta no puede ser estandarizado, es algo totalmente subjetivo que va a variar de proyecto en proyecto dependiendo del cliente, usuario final u otras variantes.

9- En lugar de invertir en actividades de Performance Testing, es mejor comprar hardware de alto rendimiento, ya que es mas barato.

Veredicto: Falso

Hay gente que se enoja mucho cuando leen o escuchan eso(sino miren aquí), esta es una forma de minimizar las cosas. Analicemos la frase; por lo que dice:

  • Parece ser que todos los problemas de Performance se deben a un tema de Hard, ya que lo solucionaríamos mejorando este.
  • Otra interpretación seria que si la aplicación tiene problemas de Performance en el código de la misma se solucionan los problemas mejorando el hard, ¿Tiene sentido? ¿Alguna vez arreglaste un problema de Soft con Hard?

He aquí la demostración de que el Mito es solo eso, un Mito ya que no tiene mucho sentido decir: “Programo la aplicación que me pidió el cliente como sea y si la performance no es buena, que mejore su hard”. Espero que se entienda a lo que apunto…

10- Performance Testing puede ser planeado en paralelo durante las pruebas funcionales

Veredicto: Falso

Este mito suele aplicarse a menudo llevando al fracaso las tareas de  Performance Testing (o trabajar las 24 hs y lograr resultados muy pobres) ya que las tareas de Performance deben planearse desde el principio del proyecto (con tiempos, recursos asignados, etc..) como cualquier otra tarea para que esta pueda ser provechosa. Además si se considera de esa forma se esta poniendo en practica el mito 2 considerando que las Pruebas de Performance van después de las pruebas funcionales.

11- Los tester de Performance son responsables de detectar los problemas de Performance y arreglarlos

Veredicto: Posible (Si además de Tester de Performance eres  DBA, Administrador del sistema, programador Java, .Net, AJAX, Python,..)

Es un esfuerzo conjunto para detectar bottlenecks y ajustar el sistema para cumplir sus objetivos de Performance. La colaboración  de expertos en la materia (programador Java, .Net, AJAX, Python,..), DBAS, administradores del sistema es lo que lleva a finalizar con las tareas para que el sistema cumpla con los requerimientos de Performance.

12- Performance Testing puede realizarse solo en el ambiente de desarrollo o testing

Veredicto: Falso

Las pruebas de Performance necesitan ser planeadas para ser corridas en un ambiente controlado donde no haya factores externos que afecten a los resultados, lo que llevaria a sacar conclusiones incorrectas.

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