lunes, 12 de noviembre de 2012

martes, 23 de octubre de 2012

Evaluación de Pruebas

EVALUACIÓN DE PRUEBAS


  • Debemos tomar en cuenta que cuando una prueba ya se realizó –ya se obtuvieron resultados– eso no implica que ya concluyó, el ciclo de vida de pruebas se concluye con la evaluación, en donde se especifica la comparación entre los resultados esperados y los obtenidos con la prueba determinando si ésta fue o no exitosa.

JMeter

  • Los reportes generados con JMeter nos proporcionan información que podemos agrupar en tablas o cuadros comparativos o en un resumen respecto a lo que arrojaron las pruebas efectuadas, indicando cuál fue el objetivo.

Tipos de Resumenes

JMeter proporciona un resumen de los reportes que se generaron. Éstos pueden ser de tres tipo:

  • Un resumen de las pruebas realizadas.


  • Una estadística de cada llamada.

  • Todos los componentes que se llamaron.

Mètricas

  • Se debe tener métricas de calidad establecidas para calcular las cifras y hacer la comparación con los resultados arrojados por las pruebas elaboradas con la herramienta.

Pruebas Cliente-Servidor


Un aspecto que debes de tomar en cuenta es que la arquitectura del software afecta el rendimiento, la robustez y el mantenimiento del software a desarrollar
 Retomando lo observado en Programación web, recordemos que una arquitectura cliente-servidor es una manera de organizar el sistema, en el cual se tiene, por un lado, un conjunto de servicios y servidores; por otro lado, un conjunto de clientes que utilizan y acceden a los servicios.
Los componentes principales son el cliente, el servidor y la red de comunicación de la arquitectura cliente- servidor.
 Los clientes pueden conocer los nombres de los servidores y los servicios asociados, en cambio para los servidores no es indispensable conocer a los clientes.  El protocolo a usar es http.
Las pruebas se deben realizar al servidor, a la base de datos y a las comunicaciones.
·         En el servidor se comprueban las funciones de coordinación y administración de datos, así como su desempeño en cuanto a tiempo de respuesta y procesamiento completo de datos.
·         En la base de datos se comprueban la exactitud e integridad de los mismos; se inspeccionan las transacciones. También debemos cerciorarnos de que se guardan, modifica y recuperan los datos
·         En las pruebas de comunicación de red hay que verificar la comunicación entre los nodos, el paso de mensajes, transacciones y que el tráfico de la red se efectúe sin errores. “Para las Comunicaciones, hay que incluir algunas cuestiones:
JMeter es ApacheJakarta. Se puede usar para pruebas de carga; es una herramienta para analizar y medir el funcionamiento de varios servicios. También se puede emplear para las pruebas de unidad para JDBC, conexiones de la base de datos, Ftp, LDAP, Webservices, JMS y conexiones genéricas del TCP.
Conclusión:
Las pruebas que se elaboran en cliente-servidor, son de gran importancia, puesto que, forman parte del ciclo de vida del software y mediante las distintas herramientas que se nos son proveídas por el protocolo HTTP; tales como el JMeter y las herramientas de edición en XML –y cumpliendo con los requisitos que las mismas demandan- , podemos detectar errores en nuestro código para así proceder a corregirlos y posteriormente, asegurar la calidad de nuestro software y como consecuencia de esto, asegurar la satisfacción del cliente.

Manual de pruebas


Un manual es una guía para resolver dudas comunes. Nos explica cómo realizar o desarrollar cierta actividad.
Deben ser elaborados por la misma empresa ya que posteriormente se van requerir para la capacitación del personal o simplemente para salir de alguna duda.
Nos va a permitir hacer ágil el desarrollo de nuestro proyecto, pues tendremos una guía de cómo hacer las pruebas adecuadamente o seguir un proceso paso a paso.
Apache JMeter es una herramienta de carga diseñada para realizar Pruebas de Rendimiento y Pruebas Funcionales sobre Aplicaciones Web. Hoy en día su arquitectura ha evolucionado, ahora no sólo puede llevar a cabo pruebas en componentes típicos de Internet (HTTP), sino también puede realizar pruebas sobre Bases de Datos, scripts Perl, servlets, objetos java, servidores FTP y prácticamente cualquier medio de los que se pueden encontrar en la red.
La mejor forma de desarrollar un manual es llevar un orden en su estructura por lo cual se requieren los siguientes puntos:
·         Nombre del manual
·         Logotipo de la empresa
·         Nombre de la empresa
·         ID del documento
·         Lugar y fecha de la elaboración
·         Número de revisión
·         Nombre de quien lo elaboró
·         Nombre de quien lo revisó y autorizó
·         Tabla de contenidos
·         Introducción
·         Objetivo
·         Desarrollo
·         Glosario de términos
·         Bibliografía


Conclusión:
El Plan de Pruebas es una parte fundamental en la fase de pruebas con base a que está es una guía de lo que se debe hacer, asimismo el diseño de un proceso para determinar los pasos a seguir para conseguir un resultado determinado.
El manual siempre será indispensable en nuestra área de trabajo ya que pueden surgir dudas que podremos aclarar con él. También nos puede servir para capacitar al personal. 

Error e Incidencia


Error: Forman parte de los “Artefactos y entregables” para la automatización de pruebas. Un error es algo equivocado o desacertado. Puede ser una acción, un concepto o una cosa que no se realizó de manera correcta.
Tipos de errores:
  • ·         De sintaxis (sintácticos).
  • ·         De ejecución.
  • ·         De lógica (lógicos).

Depuración o Debugging:
Es el proceso para encontrar y reducir los errores, en este proceso se lleva a cabo la detección de las causas que provocan los errores a partir de los resultados dados al aplicar las pruebas.
Cuando se detecta un error es necesario realizar un archivo donde se deben registrar los datos que sirven para evidenciar que las pruebas se han realizado adecuadamente y se han detectado errores
Incidencia: El primer objetivo de la gestión de incidentes es recuperar el nivel habitual de funcionamiento del servicio y minimizar en todo lo posible el impacto negativo en la organización de forma que la calidad del servicio y la disponibilidad se mantengan.
El proceso habitual para encontrar incidentes es:
  • ·         Detección y registro del incidente.
  • ·         Clasificación y soporte inicial.
  • ·         Investigación y diagnóstico.
  • ·         Resolución y recuperación.
  • ·         Cierre del incidente.
  • ·         Monitorización, seguimiento y comunicación del incidente.

Conclusión:
Básicamente seria que el error es a causa de una falta humana, entonces siempre existirán errores por el hecho de que los programadores son humanos, entonces siempre existirán incidencias, que se necesitaran registrar, para llevar a cabo el proceso de depuración que es el cual le dará calidad al software.

Plan de Pruebas


Tema 1 Plan de pruebas
Un plan de pruebas sirve para definir hasta dónde abarcará el proceso de calidad, cuáles son los objetivos a cumplir, las personas y recursos con los que se debe contar, las fechas de entrega y los responsables de cada fase del proceso; en él se basa todo el equipo de pruebas.
También es necesario determinar qué software se debe utilizar para realizar cada prueba e indicar las herramientas a utilizar para cada una de ellas: se deben describir en la sección “descripción de pruebas”.

·         Las herramientas pueden ser:

·         El diseño de casos de prueba.
·         Registro y reporte de defectos (vistos en la unidad de aprendizaje Técnicas de administración de calidad).
  • ·         Check list. 
  • ·         Gráficas. 
  • ·         Métricas.

El propósito del plan de pruebas es reunir la información necesaria para planear y controlar el esfuerzo de pruebas al sistema. Describe el enfoque de las pruebas de software, y es el plan de alto nivel generado y usado por los administradores del proyecto para dirigir el esfuerzo de pruebas.
El documento debe contener:
  • ·         OBJETIVOS
  • ·         PROPOSITO
  • ·         ALCANCE
  • ·         ABREVIACIONES, DEFINICIONES Y ACRÓNIMOS
  • ·         REFERENCIAS
  • ·         GENERALIDADES


Así se diseña el proceso de pruebas y estos son los tipos:
·         Prueba Funcional: identifica que el sistema cumpla con los requerimientos definidos
·         Prueba de Interfaz de Usuario: Verifica la interacción con el software, asegurando que el usuario cuenta con el acceso y navegación adecuada para las funciones de la aplicación.

·         Pruebas de rendimiento:  verifica el desempeño de la aplicación para cumplir con los requerimientos establecidos
·         Pruebas de carga: verifica la funcionalidad del sistema, en diferentes situaciones de carga de trabajo esperada o más allá del límite.
·         Pruebas de estrés: verifica la funcionalidad del sistema bajo condiciones de recursos que no se presentan de manera normal.
·         Pruebas de control de acceso y seguridad: Pruebas de niveles de acceso a la aplicación, a fin de verificar que el nivel de acceso es adecuado para los datos o funciones de negocio, según se requiera.
·         Pruebas de falla y recuperación: Permiten asegurar que el sistema es capaz de recuperarse ante una falla de software o hardware con la consecuente pérdida de integridad en los datos.
·         Pruebas de configuración: Verifican que la aplicación se comporta adecuadamente en diferentes plataformas de hardware o software para las cuales fue realizada.
·         Pruebas de Instalación: Verifica que la aplicación y sus actualizaciones sean instaladas adecuadamente.


Conclusión:
Un guión de pruebas no es más que la lista de los casos de prueba con los cuales vamos a experimentar.
Los casos de prueba dependerán del tipo de examen que apliquemos, pues cada prueba tiene un objetivo distinto.