Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Curso Testing

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 3

Modulo 1: fundamentos del testing

Unidad 1

Introducción al mundo testing


Evaluar un sistema o aplicación para asegurarse que cumpla con los requisitos de calidad.
Se hacen en diferentes etapas del ciclo de vida del software y etapas del desarrollo,
mantenimiento.
La funcionalidad del testing es garantizar que el software funcione como se espera y que no
tenga errores que afecten a su funcionamiento. Siempre ayuda a mejorar la calidad del
software.

Para saber qué tipo de prueba se tiene que hacer hay que determinar estos principios
básicos:
1) No es posible realizar pruebas exhaustivas
Hay que optimizar el esfuerzo de prueba en función de la evaluación de los riesgos.
2) Agrupación de defectos
Una pequeña cantidad de módulos contiene la mayoría de defectos detectados. 80%
de los problemas se encuentran en 20% de los módulos.
3) Paradoja de los pesticidas
Si se realiza el mismo método para pruebas repetitivas ese método va a ser inútil para
descubrir nuevos defectos. Hay que revisar los casos regularmente y aplicar nuevos
casos.
4) Las pruebas muestran presencia de defectos
Si no se encuentran defectos no quiere decir que no los haya.
5) Ausencia de error- falacia
No solo es encontrar defectos con las pruebas si no comprobar que el software
satisface las necesidades de negocio.
6) Pruebas tempranas
Se tienen que hacer lo antes posible durante el ciclo de vida del software ya que es
mucho más económico corregir errores en una etapa temprana.
7) Las pruebas dependen del contexto
Depende el tipo de desarrollo de software, utilizar diferentes técnicas según el
desarrollo.

¿Es lo mismo calidad y testing?


 Calidad: capacidad del producto de cumplir con las expectativas del cliente y de los
requisitos establecidos.
 Testing: es la evaluación y verificación del software para determinar si cumple con los
requisitos.
El testing es una actividad dentro del proceso de aseguramiento de la calidad del software. A
través del testing se detectan errores, que cumpla con los requisitos que funcione de manera
correcta. La calidad es más amplia porque abarca otros conceptos como la usabilidad,
confiabilidad escalabilidad, seguridad, eficiencia. Si bien el testing no garantiza la calidad es
una herramienta fundamental para lograrla.
Muchas personas confunden el Plan de Calidad con el Test Plan, pero el Plan de Calidad va más
allá de solo pruebas y se enfoca en cómo se cumplirán los estándares de calidad del proyecto y
producto. El Control de Calidad se enfoca en medir el rendimiento del producto contra los
estándares establecidos, mientras que el Aseguramiento de la Calidad se enfoca en controlar
los procesos utilizados para generar los entregables.

Proceso de calidad del software


Conjunto de actividades planificadas que se llevan a cabo durante todo el ciclo de vida del
software para garantizar que se cumplan con los requisitos de calidad.
El proceso de calidad implica: definición de estándares y prácticas para el desarrollo de
software, la revisión de los artefactos producidos durante el desarrollo del software, la prueba
de software y la validación del software producido.
Es esencial para garantizar la entrega de un producto de calidad que cumpla con las
expectativas del cliente y los requisitos del proyecto.

¿Qué es un error?
Un error es una equivocación cometida por una persona, que introduce un defecto o problema
en el software. Este defecto (también llamado BUG) puede causar un fallo en el sistema
cuando se ejecuta en ciertas circunstancias.
Un error es una equivocación. El error produce un defecto que es un problema. Si ese defecto
se ejecuta produce una falla.

Unidad 2

Categorías de las pruebas: Funcionales - No Funcionales – Mantenimiento


El propósito de las pruebas de software es identificar errores o requisitos faltantes. El software
que esté debidamente probado garantiza confiabilidad, seguridad y alto rendimiento que se
reduce en: ahorro de tiempo, rentabilidad, satisfacción para el cliente.
Tienen varios beneficios importantes:
Rentabilidad: Pueden ayudar a ahorrar dinero si se detectan errores en un proceso temprano,
costaría menos corregirlos.
Seguridad: Mejora la seguridad al identificar y eliminar riesgos o problemas antes de finalizar el
producto.
Calidad del producto: Mejorar la calidad detectando errores para mejorarlos antes de que
lleguen al cliente.
Satisfacción del cliente: pueden mejorar la experiencia del usuario, satisfacción del cliente.

Las pruebas se clasifican en tres categorías


 Pruebas Funcionales: Sirven para verificar que el software se comporta como se espera
y si cumple con los requisitos de funcionalidad.
 Técnicas que se usan:
o Pruebas de unidad: se pruebas los componentes individuales del
software.
o Pruebas de integración: se prueban los diferentes módulos en
conjunto para asegurarse que funcionen de forma coordinada.
o Pruebas de aceptación: Se prueba para ver si cumple con los requisitos
de funcionalidad y se comporta de acuerdo a lo esperado por el
cliente.
 Pruebas No Funcionales: Sirven para evaluar aspectos del software que no están
relacionados con su funcionalidad. Se evalúa la calidad en aspectos de: rendimiento,
escalabilidad, seguridad y usabilidad.
 Técnicas que se usan:
o Pruebas de rendimiento: se prueba el rendimiento en cuanto a
velocidad, capacidad de procesamiento y uso de recursos del sistema.
o Pruebas de seguridad: Se prueba la seguridad en términos de
vulnerabilidad, ataques, medidas de protección implementadas.
o Pruebas de usabilidad: se evalúa la facilidad de uso y satisfacción del
usuario.
o Pruebas de compatibilidad: se evalúa la compatibilidad del software
con diferentes sistemas operativos, navegadores y dispositivos.
 Mantenimiento: Se hacen para garantizar que el software funcione correctamente
luego de actualizaciones, correcciones, mejoras del código fuente. Se realizan después
de la fase de desarrollo y pruebas iniciales y antes de la entrega del software. También
la actualización de las pruebas realizadas para garantizar que sigan siendo efectivas.
También ayudan a identificar oportunidades de mejora y que sea compatible con
nuevas tecnologías.
 Técnicas que se usan:
o Pruebas de regresión: Aseguran que las funcionalidades existentes no
se hayan afectado luego de cambios en el software.

Pruebas manuales
Pruebas que se hacen sin la ayuda de herramientas automatizadas, es decir la interacción del
humano con el software.
El tester se ocupa de diseñar el caso de prueba y documentar el resultado obtenido.
Se usan cuando la automatización no es posible o no es rentable. Además son flexibles y
adaptables a cambios que las automatizadas pero pueden ser más propensas a errores
humanos.

Tipos de pruebas
 Pruebas de componentes: Prueban componentes individuales por separado. Estas
pruebas se centran en probar la funcionalidad de una unidad de código aislada, como
una clase o un método. Las pruebas unitarias suelen ser escritas por el propio
desarrollador y se ejecutan a menudo durante el proceso de desarrollo para detectar y
corregir errores temprano. Se detectan dos tipos: positivas y negativas. Las pruebas
unitarias positivas: cuando se espera que la unidad de código funcione correctamente.
Las pruebas unitarias negativas: se prueban casos en los que se espera que la unidad
de código falle.
Al realizar pruebas unitarias negativas, se busca identificar posibles vulnerabilidades o
debilidades en la función, permitiendo que se realicen correcciones antes de que el
software sea lanzado al mercado.
 Integración: se centra en las interacciones e interfaces entre componentes o sistemas.
Hay dos tipos: De componentes y De sistema. Pruebas de integración de
componentes: interacciones e interfaces entre los componentes integrados. Pruebas
de integración de sistema: interacciones y las interfaces proporcionadas por
organizaciones externas, como servicios web.

También podría gustarte