lunes, 16 de mayo de 2022

Objetivos del Testing

Objetivos generales del Testing




 

Ahora tocaremos el tema de la diferencia entre Quality Assurance (Asegurador de calidad) y el Testing.

 

 

En los siguientes artículos platicaremos un poco de que es el testing en el entorno empresarial para desarrollo de tecnología, por ejemplo, testing web, api testing y testing mobile, estaremos enfocados en como funciona, donde se encuentra y si es realmente necesario, con la finalidad de ampliar el conocimiento e ir profundizando poco a poco en los conceptos que involucra el testing.    

En este articulo hablaremos de los objetivos del testing. Como ya se mencionó anteriormente en el artículo de “¿Qué es el testing?”, el software está en nuestra vida cotidiana, incluso a veces no lo percibimos, ya que se encuentra en tu celular, reloj inteligente, etc.

En ocasiones se tiene una idea errónea de que el testing se trata solo de ejecutar pruebas y revisar resultados. Sin embargo, es más que eso, se tiene un gran numero de actividades que se consideran dentro del testing. Algunas de estas actividades son:

  •        Planeación de pruebas.
  •        Análisis de pruebas.
  •        Diseño de casos de prueba.
  •        Implementación de casos de prueba.
  •        Reporte de progreso y resultados de pruebas.

 

Dentro de estas actividades tenemos los siguientes objetivos mostrados en la imagen 1. 

Imagen 1 || Fuente: Luis Fernández

Para cualquier proyecto los objetivos que se muestran en la imagen anterior son esenciales.

1.  Identificar defectos: Debemos encontrar defectos y fallas para reducir el nivel de riesgo en nuestro software.

2. Ganar confianza: Haciendo un correcto testing, se gana credibilidad en la calidad de nuestro producto.

3. Informar a los Stakeholders: Con la información entregada, podrán hacer comparativas y tomar decisiones en posibles cambios producto, y hacer la planeación correcta de estos mismos.

4. Prevenir defectos: Haciendo un análisis desde el inicio de nuestro producto, podemos reducir la aparición de defectos, esto se logra teniendo requerimientos claros, historias de usuario bien desarrolladas, diseño bien planeado y código escrito.

5.  Verificar los requerimientos: Dando seguimiento al punto anterior, al momento de hacer una revisión de los requerimientos, podemos hacer sugerencias para eliminar la ambigüedad y tener claro el objetivo y la funcionalidad del producto a desarrollar.

6. Validación de los requerimientos: Una vez terminado el desarrollo del producto, el equipo de testing tiene que asegurarse que el producto cumple satisfactoriamente con los requerimientos previamente pactado, dando veracidad de su funcionamiento.

7.  Cumplimiento de normas: Para finalizar tenemos que estar seguros de que el producto está cumpliendo con los estándares planeados y establecidos durante el proceso de creación de historias de usuario.

Algunas veces los objetivos del testing puede variar, esto depende de varios factores.

  •         Componentes y sistema que será probado.
  •      Donde nos encontramos en el ciclo de vida del software.
  •         Ciclo de vida del software utilizado en el proyecto.

Para el punto de las pruebas de los componentes, el objetivo a alcanzar es encontrar todos los defectos posibles para poderlos detectar antes de la regresión. Al igual que el objetivo podría ser incrementar el numero de pruebas para cubrir más componentes del sistema.

Por otro lado, durante las pruebas de aceptación, un objetivo puede ser que el sistema funciona como es esperado y cubre todos los requerimientos que se establecieron en un inicio de manera satisfactoria, al igual de tener datos y generar la información suficiente para los Stalkholders puedan tomar decisiones en el producto, para optimización y mejoras.


        Glosario:

·  Requerimientos Un requerimiento define la funcionalidad que se espera en un determinado Sistema. Un requerimiento expresa lo que el cliente quiere. El Análisis de requerimientos es el proceso mediante el cual se identifican y se comprenden los requerimientos de un software, siendo la parte inicial de la documentación del proyecto.

·   Stackholders son las personas que están involucradas con el proyecto, con la finalidad de poder guiar el desarrollo de una aplicación/sistema que cumpla con las expectativas con las cuales fue planeada. Pueden existir diferentes tipos de Stackholders, que ayudan a determinar cual es la mejor manera de crear la aplicación.

Te invito a dejar tus comentarios para mejorar la información.

Gracias.

 

Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn) 

Para descargar el documento online da click aqui
Blog: raknarrok.blogspot.com
Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn)

lunes, 18 de enero de 2021

Quality Assurance y Testing Diferencia

 

Quality Assurance y Testing




 

Ahora tocaremos el tema de la diferencia entre Quality Assurance (Asegurador de calidad) y el Testing.

 

 

La mayoría de las personas utilizan QA Tester y Testing como un mismo significado, sin embargo, existe diferencias entre QA y Testing.

Un QA o Asegurador de calidad está involucrado en el análisis de la documentación y asegurarse que los procesos sean ejecutados de manera correcta, siguiendo los lineamientos del proyecto. De esta manera ayuda a prevenir los posibles defectos y se desarrolle un producto de calidad. Se podría decir que QA se dedica a prevenir defectos. Mientras que el Testing se encarga de encontrarlos y asegurarse que sean reparados de acuerdo con los lineamientos del proyecto establecidos por el cliente y revisados por QA.

 

Podemos observar que tienen diferencias, pero estos términos están estrechamente relacionados al igual que sus actividades, y esto es debido a que QA se encarga también de que el testing se realice de manera correcta durante el desarrollo y mantenimiento del software, en pocas palabras QA revisa que el testing sea ejecutado de manera correcta y siguiendo las buenas prácticas, agregando un valor extra de calidad del producto final.


Las definiciones pueden variar, pero tenemos que tener en claro que estos dos términos no son lo mismo pero se relacionan.


Te invito a dejar tus comentarios para mejorar la información.

Gracias.

 

Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn) 

Para descargar el documento online da click aqui
Blog: raknarrok.blogspot.com
Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn)

jueves, 14 de enero de 2021

La Importancia del testing

 

¿Por qué es necesario el testing?

 

 

Continuando con la serie de artículos de testing, vamos a hablar de la necesidad del testing en el Development life cycle process, al igual que su contribución y valores positivos.

 

 

El testing nos puede ayudar a reducir el numero de riesgos y defectos en un sistema o componente si se aplica desde una etapa temprana en el desarrollo del software y facilita evaluar a las nuevas implementaciones que se van agregando al proyecto. Con esto favorece a tener una aplicación mas estable y que funcione acorde a lo planeado.

 

Tenemos que recordar también que el testing si se aplica de manera correcta, puede reducir el costo de los defectos producción y minimizar el impacto a los problemas de funcionamiento de nuestra aplicación.

 

Una manera de aplicar el testing desde etapas tempranas es tener testers involucrados en:

 

·        Revisión de la documentación y requerimientos del proyecto.

·        Análisis de user stories.

·        Diseño y estructuración del sistema.

·        Codificación y desarrollo del sistema.

·        Revisión de la aplicación o sistema antes de la liberación a producción.

 

Ahora revisaremos la razón de cada uno de estos puntos.

 

Revisión de la documentación y requerimientos del proyecto:

 

Con un equipo de testing en este paso nos ayuda a identificar requerimientos ambiguos que pueden crear conflicto a la hora de crear los casos de prueba. Facilita entender el funcionamiento de nuestra aplicación, para poder implementar la mejor manera de probar los casos y tener una visión general del objetivo y alcance de nuestro proyecto.

 

 

Análisis de user stories:

 

Después de revisar los requerimientos, necesitamos hacer User Stories, al igual que los requerimientos, necesitamos tener en claro el objetivo de nuestro sistema. Con esto, podemos tener user stories bien definidas eliminando la ambigüedad lo mas posible, para que sea fácil de interpretar a los desarrolladores y testers funcionales encargados de la creación de los casos de prueba y regresión.

 

Diseño y estructuración del sistema:

 

Facilita al equipo de pruebas visualizar el camino por el cual estará desarrollándose el proyecto, entendiendo de una manera mas clara la razón de los diferentes componentes que corresponden al sistema. También nos permite reducir el riesgo de defectos relacionados con la estructura de nuestro sistema.

 


 

Codificación y desarrollo del sistema:

 

Tener testers involucrados en la codificación del sistema, nos facilita entender la lógica que lleva acabo cada elemento de nuestro proyecto en desarrollo, confirmando de una manera temprana la operación y facilitar la buena práctica de codificación de nuestro producto.

 

 

Revisión de la aplicación o sistema antes de la liberación a producción:

 

Teniendo testers revisando cada una de las secciones anteriores, facilita reducir el numero de defectos encontrados en producción, sin embargo tenemos que tener a un equipo involucrado en las pruebas de nuestro sistema antes de que sea lanzado al mercado para confirmar que la aplicación se desarrollo siguiendo los lineamientos establecidos de manera correcta, de lo contrario identificar los defectos y reportarlos al equipo de desarrollo para que sean corregidos y así llegue al mercado con el menor numero de fallas posibles.

 

 

Te invito a dejar tus comentarios para mejorar la información.

Gracias.

 

Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn) 

Para descargar el documento online da click aqui
Blog: raknarrok.blogspot.com
Autor: Luis Eduardo Fernández Rocha (Contacto LinkedIn)