¿Que pruebas no funcionales existen?En una aplicación podemos evaluar los siguientes aspectos:
- Manejo de memoria
- Confiabilidad
- Usabilidad
- Mantenibilidad
- Configurabilidad
- Rendimiento (Estrés)
- Seguridad
- Portabilidad
- Recuperación
- Recuperación a desastres
- Interoperabilidad
- Compatibilidad
- Instalabilidad
- Monkey:esta herramienta nos permite enviar eventos a
nuestra aplicación, esta herramienta puede ser usada para realizar
pruebas de estrés, ya que nos permite definir la cantidad de eventos que
deseamos ejecutar, la frecuencia de estos, restricciones respecto a que
paquetes realizar la prueba. Adicionalmente esta herramienta vigila los
siguientes aspectos:
- Si se bloquea la herramienta para trabajar sobre un paquete, y se intenta acceder a otro paquete, se bloqueará la acción.
- Si la aplicación falla o lanza una excepción no controlada, la herramienta detiene la ejecución y reporta el error.
- Si la aplicación no responde por algún error, la herramienta detiene la ejecución y reporta el error.
- Traceview:esta herramienta permite
visualizar gráficamente los logs que generemos en nuestra aplicación,
estos logs los podemos generar con funciones de rastreo o DDMS. (DDMS es
una aplicación que ofrece un conjunto de funcionalidades para el debug,
entre estas se encuentran métodos para perfilar la
aplicación).Traceview ofrece dos formas de visualizar los datos:
- Timeline Panel:De esta forma podemos ver el tiempo de ejecución de los métodos y diferentes hilos, como se muestra en la imagen:
- Profile Panel:Esta visualización muestra un listado
de los métodos que se han ejecutado, podemos ver el tiempo de ejecución
del método, el tiempo de ejecución del método y las funciones que este
llame en su interior, cantidad de veces que el método es llamado.
Adicionalmente para cada método se muestra el listado de métodos a los
cuales este llama, y de los cuales el ha sido llamado, para diferenciar
estos dos se utiliza el color purpura y amarillo como color de fondo.
Debug.stopMethodTracing(); //Detener el log
De esta forma tenemos un control muy preciso sobre el código que deseamos evaluar.
La información arrojada por los logs y las gráficas seria de gran ayuda en determinar el rendimiento de la aplicación ya que los tiempos nos permiten determinar cuales métodos deben ser optimizados para una más rápida ejecución.
Para almacenar información en el log podemos llamar a los métodos:Debug.startMethodTracing(“NombreLog”); //Iniciar el log
- Timeline Panel:De esta forma podemos ver el tiempo de ejecución de los métodos y diferentes hilos, como se muestra en la imagen:
- Manejo de memoria: Para evaluar el consumo de memoria en nuestra aplicación podemos usar la herramienta “allocation tracker” la cual hace parte del DDMS, esta herramienta nos permitirá conectarnos a nuestra aplicación y nos mostrará el listado de objetos utilizados por la misma, el hilo, la clase y el método en el cual fueron creados.
- http://www.testingstandards.co.uk/definitions.htm
- http://www.slideshare.net/nworah/non-funtional-testing
- http://www.mkltesthead.com/2011/01/testhead-book-club-how-we-test-software.html
- http://developer.android.com/guide/developing/debugging/debugging-tracing.html
- http://developer.android.com/guide/developing/tools/monkey.html
Fuente: https://codeater.wordpress.com/2012/05/06/pruebas-no-funcionales-en-android/
No hay comentarios:
Publicar un comentario