lunes, 4 de mayo de 2015

Cap 1 - QA Automatización de pruebas - introducción

QA Automatización de pruebas - introducción

(Automation UFT/QTP Introduction)

I. Introducción

Este articulo y la serie que le continuaran son extractos del proyecto de investigación, siendo yo el autor intelectual del mismo de cualquier manera se incluirán las bibliográfias de los lugares donde se citaron parrafos .

Este documento tiene como objetivo tener una visión general sobre la automatización de procesos y test cases con la herramienta de UFT/QTP.

Esta información la información puede ser encontrada en Internet fácilmente en ingles.
Espero y sea de ayuda a las personas que no tengan un buen nivel de ingles o simplemente a quienes gusten utilizar este blog para tener mas a la mano la información de functions, sub, etc.

Primero daré una breve introducción a los roles (o Job's) y acronicos que estaremos utilizado durante esta serie de artículos, para ir introduciéndonos poco a poco al ingles técnico.

Conceptos Básicos

  •  HP QuickTest Professional:

HP Quick Test Professional (QTP) es parte de la herramienta HP Quality Center suite, facilita funcionalidades y pruebas de regresión automatizadas para aplicaciones, servicios y entornos de software. QTP soporta VBScript (Visual Basic Script) para manipular los objetos creados para la aplicación y colocar los controles de prueba.
Hoy en día el QTP se descontinuo para dar le paso a la nueva herramienta conocida como UFT es la nueva versión lanzada al mercado por HP, sustituyendo a QTP.


  • HP Application Lifecycle Management (ALM):
Es un producto de software dirigido a acelerar la entrega de aplicaciones modernas, seguras y confiables. Es una combinación de una plataforma común, varias aplicaciones clave y un panel de control dirigido a la gestión del ciclo de vida del núcleo de aplicaciones. ALM se centra en el ciclo de vida desde el diseño hasta la preparación para la entrega a las operaciones.

Nota: Solo para aclarar que UFT/QTP y ALM son dos herramientas completamente diferentes,  una para automatizar casos de pruebas, mientras que ALM se puede llevar un registro de cada prueba realizada en cada release, es decir ALM te apoya a la gestion. Sin embargo ALM y UFT pueden relacionarse entre si. Mas adelante se explicara a detalle su relación.

  • DB2 Query Management Facility (QMF):
Cuando se generan Scripts existen diferentes maneras de tomar los datos de pruebas, una manera es generar los datos desde cero a partir de funciones, sin embargo eso afecta el rendimiento  del programa, otra manera es generar consultas directo de la base de datos, mejorando el rendimiento y la obtención de información, una herramienta que se puede emplear es QMF para crear los queries y ver los resultados que este arroja. (IBM,2013)

·      
  • Equipo de Manual: 
Son las personas encargadas de ejecutar los casos de prueba manualmente. 
También llamados Functional manual team ellos son los encargados de analizar, diseñar y crear los Test Cases (TC's).

  • Caso de pruebas: 
Los casos de pruebas o Test Cases(TC's) son los pasos a seguir para probar una funcionalidad de la aplicación, estos pueden estar escritos con un estándar para que  cualquier usuario al leerlo pueda ejecutarlo sin ninguna ayuda. Mas adelante se podrá ver un ejemplo de un TC's.
  •  ExpertView:
Es la vista a detalle del código empleado para crear el flujo de los scripts, es la manera más utilizada para tener un mejor control de los objetos. 


  •  XML:

XML es un lenguaje de marcado basado en texto. Se identifica los datos mediante etiquetas (identificadores encerrados entre paréntesis angulares: <...>). En conjunto, las etiquetas se conocen como marcas. (Microsystems, 2014)

  •  JSON:

Acrónimo de JavaScript Object Notation, es un formato ligero para el intercambio de datos. JSON es un subconjunto de la notación literal de objetos de JavaScript que no requiere el uso de XML. (Json, 2014)

  •  HTTP:

HTTP (Hypertext Transfer Protocol) es el conjunto de normas para la transferencia de archivos (texto, imágenes gráficas, sonido, video y otros archivos multimedia) en la World Wide Web.  (Rouse, 2006)


  •  Rest Client:





Es una herramienta para desarrolladores para crear y probar peticiones HTTP. Tiene diferentes modalidades de peticiones, JSON y XML.

  •  Prueba de software:

Los productos software están incrementando continuamente su presencia en muchos aspectos de la vida cotidiana, dotados cada vez de más funcionalidades y, consecuentemente, más complejos. Este incremento de complejidad conlleva la posibilidad de un aumento de fallos y errores durante su utilización que pueden acarrear consecuencias catastróficas en términos económicos, de tiempo o incluso de vidas humanas. Por tanto, existe una necesidad importante de incluir actividades de aseguramiento de calidad durante el proceso de desarrollo y mantenimiento del software.
La prueba del software es uno de los procesos fundamentales dentro del control de calidad de software. En su nivel más simplista, consiste en una ejecución de un programa bajo ciertos datos de entrada (casos de prueba), para posteriormente comparar las salidas obtenidas con las deseadas (función para la cual fue diseñado) (Tuya, Ramos Román, & Dolado, 2007).


  •  Verificación y Validación:

Las técnicas de verificación y validación son complementarias entre sí, y no la sustitución de una a la otra. Un proyecto debe estimar el tiempo y los esfuerzos requeridos para la preparación y ejecución de actividades de verificación y validación, plan del proyecto y por las definiciones del plan de pruebas (Limaye, 2009).
La validación comprende los “procesos de  evaluación de un sistema o componente durante o al final del proceso de desarrollo para determinar si satisfacen los requisitos especificados”. Usualmente, la verificación está asociada al conjunto de actividades que aseguran que el software es coherente con su especificación. Por tanto, abarca tareas tales como las revisiones e inspecciones de código. Mientras, la validación está encaminada a determinar si el software satisface las expectativas del usuario, por lo que suele estar asociada a su ejecución.
La verificación específicamente implica por parte de los desarrolladores la revisión de los planes, del código, de los requerimientos, de la documentación, las especificaciones y posteriormente una reunión con los usuarios para evaluar dichos documentos. Esto puede ser hecho con listas de chequeos, listas de problemas o walkthrough. Por otro lado la validación implica la aplicación de las pruebas del software y comienza una vez que la verificación esté completa.

  •  Walkthrough:

Es una junta informal donde analistas y usuarios evalúan las propuestas informacionales, por lo general se requiere una preparación de documentos.

  •  Inspección:

Después de haberse llevado a cabo walkthrough, se realiza una reunión formal la cual se le llama inspección, generalmente se reúne personal de diferentes sectores, principalmente analistas, programadores, e ingenieros de pruebas (testers), donde se llega un acuerdo con base en los métodos de seguridad de prueba que se llevarán a cabo.  Frecuentemente en estas reuniones se requiere de un moderador el cual es el representante de la empresa y que da a conocer a los usuarios, una lista de procedimientos de métodos de prueba y controles de calidad de las cuales el usuario debe optar por alguna de ellas, defendiendo el mismo nivel de calidad, o defendiendo él mismo el nivel de calidad (Society, 1998).

  •  Peer review:

Es un esfuerzo organizado para que los profesionales practiquen revisar la calidad y adecuación de los servicios ordenados o ejecutados por sus compañeros profesionales (Haag-Heitman & George, 2011).

  •  Defecto:

Es el resultado de un fallo o deficiencia durante el proceso de creación de programas de ordenador o computadora (software). Dicho fallo puede presentarse en cualquiera de las etapas del ciclo de vida del software aunque los más evidentes se dan en la etapa de desarrollo y programación. Los errores pueden suceder en cualquier etapa de la creación de software.  (Billyve,2013)


Continua en el Cap 2 - QA&V Test types (Basis/Spanish).

Autor: Luis Eduardo Fernandez Rocha (Contacto Linkedin)

1 comentario: