Testing - Aplicando a un sistema desarrollado

 


Autor: Jose Alfredo Castillo - Estudiante de la UFG

Anteriormente en el foro llamado "Ejemplo de Prueba de los Programas" expliqué algunos tipos de pruebas aplicadas a un proyecto en mi trabajo; sin embargo, fue únicamente explicado. Para esta ocasión, voy a mostrar los resultados reales con capturas de pantallas y algunas pruebas será explicación por el tipo de pruebas a realizar.

El sistema al cual vamos a aplicarle algunos tipos de pruebas se llama AppRHadmin, el cual es un sistema de recursos humanos que desarrollamos en Equipo de trabajo, en la materia de ASI2 en la UFG, y este sistemas se le desarrolló a la empresa DataSolutions aquí en El Salvador.


➤➤➤Sin mas que explicar, iniciamos.... 

📌Prueba de función

Ignora la estructura del sistema y se centra en la funcionalidad (se basa en los requerimientos funcionales). El enfoque de aquí en adelante es más caja negra que caja blanca.
Las pruebas de función eficaces deben tener una alta probabilidad de descubrir una falla. Para la prueba de función se aplican los mismas pautas que se utilizan para la comprobación unitaria:
  • Tener una alta probabilidad de descubrir un defecto.
  • Utilizar un equipo de prueba independiente de los diseñadores y programadores. 
  • Conocer acciones esperadas y rendimientos.
  • Probar entradas validas como no validas.
  • Jamás hacer modificaciones al sistema para hacerlo más fácil de probar.
  • Tener definido un criterio de finalización o detección.
En el sistema de recursos humanos, vamos a probar las funciones principales de crear una constancia salarial para un empleado.

Ingresamos a la opción de menú "Empleados" y luego damos clic en "Constancia Salarial":


Buscamos un empleado, seleccionar el empleado con un clic, luego digitamos el motivo de la creación de al constancia salarial:


Ahora, damos clic en el botón Guardar; si todo esta bien, se mostrará un mensaje de confirmación OK,  se debe habilitar el botón "Imprimir".





Ahora, damos clic en el botón "Imprimir", y nos debe generar la constancia salarial listas para imprimirla o guardarla en pdf:

Nota: Internamente, se calculan las deducciones y el salario liquido del empleado:


Reimprimir constancia salarial:

Buscamos la constancia que acabamos de crear y luego, debemos seleccionarla:



En la pestaña de detalle, nos cargara la información de esa constancia para luego ser reimpresa:


En el caso; de que el usuario no digite un campo, se le mostrará un mensaje de "Completar los datos solicitados":


Resultado de esta prueba: Todas fueron exitosas 😃

📌Prueba de rendimiento o perfomace

Cuando se tiene certeza que el sistema realiza las funciones exigidas por los requerimientos, el esfuerzo de prueba se vuelca a la manera en que se realizan esas funciones. Acá se ocupan los requerimientos no funcionales.

Los tipos de prueba quedan determinados por los tipos de requerimientos no funcionales especificados, para este caso, veremos "pruebas de seguridad, pruebas de temporización y pruebas de documentación".

Pruebas de seguridad: Garantizan que se satisfacen los requerimientos de seguridad. Se prueban características del sistema relacionadas con la disponibilidad, integridad, confiabilidad de los datos y servicios.

El sistema menaje segregación de funciones, tiene roles y permisos para las ventanas (pantallas del usuario); además, la información sensible o confidencial, esta encriptada en la base de datos.







La información confidencial o sensible, se almacena encripta para mayor seguridad y salvaguardar la información y buena integridad de los datos:


Ademas, se han hecho otras pruebas y el resultado fue el siguiente:
  • Se cumplieron con los requerimientos no funcionales, para darle un buen rendimiento a los procesos del sistema.
  • Se han probado tanto el software, como el hardware. Esto, debido a que la prueba de rendimiento normalmente involucra el hardware tanto como el software, los ingenieros de hardware pueden ser parte del equipo de prueba.
Resultado de esta prueba: Todas fueron exitosas 😃

Pruebas de Temporización: Evalúan los requerimientos que se ocupan de aspectos temporales, tiempo para responder a un usuario, o el tiempo para realizar una función.

Para esta prueba, vamos a verificar cuanto tiempo se tarda el sistema para consultar todos los expedientes actuales, y cuanto tiempo se tarda en generar el backup (.bak) de la base de datos, para el respaldo de su información (Activos de la empresa).

En la siguiente captura, se observa que el tiempo que se tardo en obtener todos los expedientes actuales, fue menos de 1 segundo. Tiempo bastante bueno.


En la siguiente captura, se observa que para generar un backup (.bak) de la base de datos, se tardo menos de 1 segundo. 
Tiempo bastante bueno.


Resultado de esta prueba: Todas fueron exitosas 😃

📌Prueba de aceptación

Con las pruebas de función y rendimiento, se tiene la convicción de que el sistema satisface todos los requerimientos especificados durante la fases iniciales de desarrollo de software.

El próximo paso es preguntar a clientes y usuarios si están de acuerdo con el producto.

En el sistema de recursos humanos, de este tipo de prueba, vamos a ver las pruebas de Referencia (bench-mark) Prueba piloto.

Prueba de Referencia (bench-mark): El cliente prepara un juego de casos de prueba que representan condiciones típicas bajo las que el sistema operará cuando realmente este instalado.
El cliente evalúa el rendimiento del sistema para cada caso de prueba.
Estas pruebas normalmente se realizan cuando un cliente tiene requerimientos especiales.

Para este caso, el cliente (empresa DataSolutions), solicito un requerimiento especial el cual fue, que se creará una opción para que se pudiera hacer un backup de la base de datos; tanto .bak como script completo de la base de datos.

Se presenta captura de la generación de un backup (.bak)


Se presenta captura de la generación de un backup (script completo)



Despues de que terminar este requerimiento especial, nos dieron la aceptación para el aplicativo.

Resultado de esta prueba: Todas fueron exitosas 😃

Prueba piloto: Se instala el sistema en una base experimental. Los usuarios ensayan el sistema como si se tratara de una instalación permanente. Esta prueba cuenta con el trabajo diario del sistema para probar todas las funciones.

Esta prueba es mucho menos formal y estructurada que una prueba de referencia.

Para este caso, se creo el instalador del sistema sistema de recursos humanos, para luego instalarlo en algunas máquinas de la empresa "DataSolutions", para realizar las pruebas piloto (pre-producción).


El cliente probó todas las funciones del aplicativo y principalmente el modulo de planillas y cálculos.

Resultado de esta prueba: Todas fueron exitosas 😃

📌Prueba de Instalación

La ronda final de prueba implica instalar el sistema en los puestos determinados por el usuario. Si la prueba de aceptación se ha realizado en el sitio, pueden no necesitarse las pruebas de instalación.

Cuando el cliente está satisfecho con los resultados, la prueba se considera completa y se hace la entrega formal del sistema.

Para este caso, el cliente estuvo satisfecho con el desarrollo del sistema para el area de recursos humanos. Además, en el proceso de instalación que realizamos en cada máquina, no tuvimos problemas.

Resultado de esta prueba: Todas fueron exitosas 😃

 ------------------------------------------------------------------------------------------------------------------------

Aqui hemos finalizado todos los resultados de las pruebas que realizamos al sistema de recursos humanos para la empresa "DataSolutions"


Este tema es muy amplio, pero he tratado de explicarles y compartirles lo más a detalle sobre los resultados de las pruebas en el sistema que se desarrolló en equipo de trabajo, para la empresa DataSolutions.

Por el momento esto seria todo; sin embargo, esperen más aportes sobre "las pruebas en los sistemas", seguiré publicando más blogs.

Saludos.

Comentarios