Intro
La unidad 1. Fundamentos del proceso de pruebas, se compone de los siguientes puntos:
1.1. ¿Qué es probar?
1.1.1. Objetivos y características de la prueba
1.1.2. Prueba y Depuración
1.2. ¿Porqué es necesario probar?
1.2.1. Contribuciones de la prueba al éxito
1.2.2. Aseguramiento de la calidad y proceso de prueba
1.2.3. Errores, Defectos y Fallos
1.2.4. Defectos, Causas Raíz y Efectos
1.3. Siete principios de la prueba
1.4. Proceso de prueba
1.4.1. El proceso de prueba en contexto
1.4.2. Actividades y tareas de prueba
1.4.3. Productos de trabajo de la prueba
1.4.4. Trazabilidad entre la base de prueba y los productos de trabajo de la prueba
1.5. La psicología del proceso de prueba
1.5.1. Psicología humana y el proceso de prueba
1.5.2. Formas de pensar del tester y del desarrollador
Presentación
El proceso de pruebas es una parte esencial del desarrollo de software que garantiza la calidad y confiabilidad de un producto. En esta síntesis, exploraremos los conceptos fundamentales del proceso de pruebas según el Programa de Estudios Nivel Básico ISTQB CTFL versión 2018.
Comenzamos por comprender qué es probar. La prueba es un proceso sistemático de evaluar un sistema o componente con el objetivo de detectar defectos y asegurar que cumple con los requisitos especificados. La prueba busca identificar características deseables y no deseadas, y se diferencia de la depuración, que se enfoca en encontrar y corregir defectos.
¿Por qué es necesario probar? La prueba contribuye significativamente al éxito del proyecto de software al garantizar la calidad del producto final. También se centra en el aseguramiento de la calidad y está estrechamente relacionada con el proceso de prueba. La prueba ayuda a identificar errores, defectos y fallos, y se ocupa de comprender las causas raíz y los efectos de los defectos.
Existen siete principios fundamentales de la prueba que proporcionan una base sólida para desarrollar estrategias y enfoques efectivos. Estos principios incluyen la exhaustividad de la prueba, la detección temprana de defectos, la dependencia de la priorización, entre otros.
El proceso de prueba se estructura en diferentes actividades y tareas que se realizan en un contexto específico. Estas actividades abarcan desde la planificación de la prueba hasta la ejecución y el informe de resultados. Además, existen productos de trabajo de la prueba, como especificaciones de prueba, casos de prueba y registros de defectos, que facilitan la organización y seguimiento del proceso.
Es importante mantener la trazabilidad entre la base de prueba (requisitos, especificaciones, etc.) y los productos de trabajo de la prueba. Esto permite una mejor comprensión de qué se está probando y cómo se relaciona con los requisitos y objetivos del proyecto.
La psicología también desempeña un papel en el proceso de prueba. La comprensión de la psicología humana y las diferentes formas de pensar de los testers y los desarrolladores puede ayudar a mejorar la colaboración y la eficacia en el proceso de prueba.
En resumen, el proceso de pruebas es esencial para garantizar la calidad del software. Comprender qué es probar, por qué es necesario, los principios clave, las actividades y tareas involucradas, los productos de trabajo y la psicología asociada, nos proporciona una base sólida para realizar pruebas efectivas y alcanzar el éxito en el desarrollo de software.
Ejemplos básicos
1.1. ¿Qué es probar?
Ejemplo: Como tester, estás probando una aplicación de banca en línea. El objetivo de la prueba es verificar si el formulario de inicio de sesión funciona correctamente al ingresar credenciales válidas e inválidas. Realizas diferentes pruebas, como ingresar una contraseña incorrecta y verificar que se muestre un mensaje de error correspondiente.
1.1.1. Objetivos y características de la prueba
Ejemplo: Estás probando una aplicación móvil de redes sociales. El objetivo de la prueba es asegurarse de que los usuarios puedan publicar contenido correctamente y que los comentarios y me gusta se muestren correctamente en las publicaciones. Además, te aseguras de que la aplicación sea fácil de usar, accesible y responda rápidamente a las interacciones del usuario.
1.1.2. Prueba y Depuración
Ejemplo: Después de realizar una prueba en una aplicación de comercio electrónico, descubres que los usuarios no pueden agregar productos al carrito de compras. Identificas que hay un error en el código y lo informas al equipo de desarrollo para que realicen la depuración y corrijan el problema.
1.2. ¿Por qué es necesario probar?
Ejemplo: Antes de lanzar una nueva versión de una aplicación de navegación GPS, es esencial realizar pruebas exhaustivas. De esta manera, se pueden identificar y corregir posibles errores que podrían causar problemas en la ruta de los usuarios o generar malentendidos en las indicaciones, lo que garantiza una experiencia de usuario positiva y evita situaciones peligrosas.
1.2.1. Contribuciones de la prueba al éxito
Ejemplo: Al probar una aplicación de gestión de proyectos, descubres un defecto crítico que podría provocar la pérdida de datos de los usuarios. Al informar de inmediato el defecto, se puede corregir antes de que el producto se lance al mercado, lo que evita consecuencias negativas y contribuye al éxito del proyecto.
1.2.2. Aseguramiento de la calidad y proceso de prueba
Ejemplo: Como parte del aseguramiento de calidad, realizas pruebas de regresión en una aplicación de correo electrónico después de una actualización. Verificas que todas las funcionalidades principales, como enviar y recibir correos, adjuntar archivos y organizar carpetas, sigan funcionando correctamente y que la actualización no haya introducido nuevos errores.
1.2.3. Errores, Defectos y Fallos
Ejemplo: Durante una prueba de rendimiento en una aplicación de transmisión de videos, se identifica que, al reproducir contenido de alta definición, la aplicación se congela y muestra una pantalla en blanco. Esto se clasifica como un defecto, ya que la aplicación no se comporta según lo esperado en ciertas condiciones, lo que podría resultar en un fallo para el usuario.
1.2.4. Defectos, Causas Raíz y Efectos
Ejemplo: Al probar un software de facturación, descubres que cuando se ingresan ciertos caracteres especiales en los campos de información del cliente, el sistema arroja un error y no genera la factura correctamente. La causa raíz podría ser una validación incorrecta de la entrada de datos. El efecto es que los clientes no pueden recibir sus facturas, lo que afecta la precisión y confiabilidad del proceso de facturación.
1.3. Siete principios de la prueba
Ejemplo: Al probar una aplicación de compras en línea, aplicas el principio de detección temprana de defectos al realizar pruebas exploratorias desde las primeras etapas de desarrollo. Esto te permite descubrir y corregir problemas de usabilidad o funcionales antes de que se vuelvan más costosos de solucionar en etapas posteriores.
1.4. Proceso de prueba
Ejemplo: En el proceso de prueba de una aplicación móvil de fitness, una de las actividades es verificar la funcionalidad de seguimiento de pasos. Sigues un conjunto de casos de prueba diseñados previamente para simular diferentes escenarios, como caminar, correr y subir escaleras, y te aseguras de que los pasos se cuenten y registren correctamente.
1.4.1. El proceso de prueba en contexto
Ejemplo: Estás probando un software de gestión de inventario para un minorista en línea. El proceso de prueba se adapta a las necesidades específicas del cliente, por lo que te enfocas en las funcionalidades clave, como la actualización en tiempo real de los niveles de inventario y la generación automática de informes, que son vitales para el negocio en línea.
1.4.2. Actividades y tareas de prueba
Ejemplo: Como parte de las actividades de prueba en una aplicación de reserva de vuelos, realizas pruebas de integración para verificar que la aplicación se integre correctamente con los sistemas de reserva de las aerolíneas. Te aseguras de que los datos de vuelo, las tarifas y los asientos se actualicen y muestren correctamente en la aplicación.
1.4.3. Productos de trabajo de la prueba
Ejemplo: Como parte de la prueba de una aplicación de comercio electrónico, generas un informe de resultados que detalla los casos de prueba ejecutados, los defectos encontrados y su estado actual. Este informe proporciona información valiosa al equipo de desarrollo para que puedan abordar y corregir los defectos antes del lanzamiento.
1.4.4. Trazabilidad entre la base de prueba y los productos de trabajo de la prueba
Ejemplo: Al realizar pruebas en un software de gestión de proyectos, mantienes una trazabilidad clara entre los casos de prueba y los requisitos correspondientes. De esta manera, es posible demostrar que todas las funcionalidades requeridas han sido probadas y que se ha logrado una cobertura adecuada.
1.5. La psicología del proceso de prueba
Ejemplo: Como tester, debes adoptar una mentalidad de usuario final al probar una aplicación de redes sociales. Esto implica pensar como un usuario común y evaluar la experiencia de usuario, la navegación intuitiva y la facilidad de uso. Al ponerse en el lugar del usuario, puedes identificar posibles puntos débiles y mejorar la calidad del producto final.