Tutorial de Pruebas de software-Saber cómo realizar pruebas

Ningún software puede ser completamente perfecto. ¿Pero es una licencia para crear basura? El ingrediente que falta es nuestra renuencia a cuantificar la calidad. Para aumentar la calidad, es muy importante garantizar el rendimiento efectivo de la aplicación de software. Se requieren pruebas de software para garantizar que la aplicación se ejecute sin errores. En este tutorial de prueba de software, le diré todo lo que necesita saber sobre los aspectos de prueba. Continuando con el blog anterior sobre lo que son las pruebas de software, aquí profundizaré y cubriré los temas mencionados a continuación.

  • Introducción a las Pruebas de Software
  • Fundamentos de las Pruebas de Software
    • Ciclo de Vida del Desarrollo de Software
    • Modelo de Verificación y Validación
    • Métodos de prueba de software
    • Niveles de prueba de software
    • Artefactos de Documentación de Pruebas de Software
  • Ciclo de vida del error
  • Desafíos que enfrentan las pruebas manuales
  • Pruebas de automatización vs Pruebas Manuales

También puede consultar el tutorial de grabación de pruebas de software donde nuestros expertos en Capacitación de Pruebas de Software en profundidad.

Introducción a las pruebas de software

El mundo actual de la tecnología está completamente dominado por las máquinas, y su comportamiento está controlado por el software que lo alimenta. Las pruebas de software proporcionan una solución rentable para todas nuestras preocupaciones. ¿Qué es la Prueba de Software? Las pruebas de software son un proceso de evaluación de la funcionalidad de una aplicación de software para encontrar errores de software. Comprueba si el software desarrollado cumple con los requisitos especificados e identifica cualquier defecto en el software para lograr un producto de calidad. Básicamente, está ejecutando un sistema para identificar cualquier laguna, error o requisito que falte en contra de los requisitos reales.

 Qué es la prueba de software - Tutorial de prueba de software-EdurekaTambién se indica como el proceso de verificación y validación de un producto de software. Comprueba si el producto de software:

  • Cumple con los requisitos comerciales y técnicos que guiaron su diseño y desarrollo
  • Funciona según el requisito
  • Se puede implementar con las mismas características

    Ahora, vayamos más allá en el artículo tutorial de Pruebas de software y obtengamos algunas ideas sobre los conceptos básicos de las Pruebas de software.

    Fundamentos de pruebas de software

    En primer lugar, le diré Cuál es el ciclo de vida del desarrollo de software?

    Ciclo de Vida de Desarrollo de software

    (SDLC) abreviado como Ciclo de Vida de Desarrollo de software es un proceso utilizado por la industria del software para diseñar, desarrollar y probar software de alta calidad. Su objetivo es producir software de alta calidad que cumpla o supere las expectativas de los clientes, alcance la finalización dentro del tiempo y las estimaciones de costos. El siguiente diagrama muestra varias fases involucradas en SDLC.

     SDLC - Tutorial de prueba de software-Edureka

    Fig: Ciclo de vida del desarrollo de software: Tutorial de prueba de software

    Fase de requisitos

    La recopilación y el análisis de requisitos es la fase más importante en el ciclo de vida del desarrollo de software. El analista de negocios recopila los requisitos del cliente / cliente según las necesidades comerciales del cliente y documenta los requisitos en la especificación de requisitos comerciales (el nombre del documento varía según la organización).

    Fase de análisis

    Una vez que se recopilan y analizan los requisitos, el siguiente paso es definir y documentar los requisitos del producto y obtener su aprobación por el cliente. Esto se registra a través del documento SRS (Especificación de Requisitos de Software). Consta de todos los requisitos del producto a diseñar y desarrollar durante el ciclo de vida del proyecto

    Fase de diseño

    Esta fase tiene dos pasos:

  1. HLD – Diseño de alto nivel-Proporciona la arquitectura del producto de software a desarrollar y es realizado por arquitectos y desarrolladores sénior
  2. LLD – Diseño de bajo nivel – Es llevado a cabo por desarrolladores sénior. Aquí, le brinda información sobre cómo deben funcionar todas y cada una de las funciones del producto y cómo deben funcionar cada componente.

El resultado de esta fase es el Documento de Alto Nivel y el Documento de Bajo Nivel que funciona como insumo para la siguiente fase.

Fase de desarrollo

Los desarrolladores de todos los niveles (seniors, juniors, freshers) están involucrados en esta fase. Esta es la fase en la que comienza a crear el código para el software.

Fase de prueba

Cuando el software está listo, se envía al departamento de pruebas donde lo prueban a fondo para detectar diferentes defectos. Las pruebas de un software se llevan a cabo manualmente o utilizando herramientas de prueba automatizadas y se aseguran de que todos y cada uno de los componentes del software funcionen correctamente. Una vez que el software está libre de errores, pasa a la siguiente etapa, que es la implementación.

Implementación & Fase de mantenimiento

Una vez que el producto está libre de errores, se entrega/implementa al cliente para su uso. La implementación la realizan los ingenieros de implementación/Implementación. A medida que los clientes comienzan a usar el sistema desarrollado, surgen los problemas reales y deben resolverse de vez en cuando. Detectar y resolver estos problemas encontrados por el cliente viene en la fase de mantenimiento.

Todo esto se trataba del Ciclo de Vida del Desarrollo de Software. Si desea conocer las diferentes etapas involucradas en el proceso de prueba de software, puede leer este blog sobre el Ciclo de vida de las Pruebas de software. Habiendo entendido esto, vayamos más allá con este tutorial de prueba de software y veamos qué es el modelo V & V.

El modelo V es ahora uno de los procesos de desarrollo de software más utilizados. La introducción del modelo V ha demostrado la implementación de las pruebas desde la fase de requisitos. También se denomina modelo de Verificación y Validación

¿Qué es la Verificación y Validación en las Pruebas de Software?Verificación :La verificación es una técnica de análisis estático. Aquí, la prueba se realiza sin ejecutar el código. Los ejemplos incluyen: revisiones, inspección y recorrido.

Validación: La validación es un proceso de análisis dinámico donde realizamos pruebas ejecutando el código. Los ejemplos incluyen técnicas de prueba funcionales y no funcionales.

En el modelo V, las actividades de desarrollo y control de calidad se realizan simultáneamente. Aquí, las pruebas comienzan desde la fase de requisitos. Las actividades de verificación y validación se realizan simultáneamente. Veamos la figura a continuación para comprender el modelo V

 Modelo V V-Tutorial de prueba de software-Edureka
Fig: Verificación &Modelo de validación – Tutorial de prueba de software

En un proceso de desarrollo típico, el lado izquierdo muestra las actividades de desarrollo y el lado derecho muestra las actividades de prueba. No debería estar equivocado si digo que en la fase de desarrollo, tanto la verificación como la validación se realizan junto con las actividades de desarrollo reales.

LHS

Como se mencionó anteriormente, las actividades del lado izquierdo son actividades de desarrollo. Normalmente sentimos, ¿qué pruebas podemos hacer en la fase de desarrollo? Pero esta es la esencia de este modelo, que ilustra que las pruebas también se pueden realizar en todas las fases de las actividades de desarrollo.

RHS

Las actividades de prueba o la fase de validación se llevan a cabo en el lado derecho del modelo.

A medida que haya obtenido información sobre esto, sigamos adelante con este tutorial de prueba de software y veamos cuáles son los diferentes métodos en los que se puede probar el software.

Métodos de prueba de software

Hay tres métodos para probar software y son los siguientes:

  • Prueba de caja negra
  • Prueba de caja blanca
  • Prueba de caja gris

Prueba de caja negra: Es un método de prueba de software en el que el probador NO conoce la estructura/ diseño/ implementación internos del artículo que se está probando.

Prueba de caja blanca: Es un método de prueba de software en el que el probador conoce la estructura/ diseño/ implementación internos del artículo que se está probando.

Prueba de caja gris: Es una técnica de prueba realizada con información limitada sobre la funcionalidad interna del sistema.

Espero que haya entendido los indicadores clave sobre diferentes métodos de prueba de software. Ahora, vayamos más allá en este artículo Tutorial de Pruebas de Software y entendamos los Niveles de Pruebas de Software.

Niveles de prueba de software

Un nivel de prueba de software es un proceso en el que se está probando cada unidad o componente de un software/sistema. Hay varios niveles de prueba que ayudan a verificar el comportamiento y el rendimiento de las pruebas de software. Estos niveles de prueba están diseñados para reconocer las áreas faltantes y la reconciliación entre el desarrollo de estados del ciclo de vida. En el modelo de ciclo de vida de desarrollo de software, hay fases caracterizadas como la recopilación de requisitos, el análisis, el diseño, la codificación o ejecución, las pruebas y la implementación.

Todas estas fases pasan por el proceso de niveles de prueba de software. Hay principalmente cuatro niveles de prueba y son:

  1. Prueba Unitaria
  2. Prueba de integración
  3. Prueba de sistema
  4. Prueba de aceptación

Básicamente, comienza con la fase de Prueba Unitaria y termina con la Prueba de Aceptación.

En la siguiente sección de este tutorial de pruebas de software, profundizaré en el siguiente tema y explicaré cuáles son los diversos artefactos de documentación en las pruebas de software.

Artefactos de Documentación de pruebas de software

Documentar los casos de prueba le facilitará estimar el esfuerzo de prueba que necesitará junto con la cobertura de prueba y el requisito de seguimiento y rastreo. Algunos artefactos de documentación comúnmente aplicados asociados con las pruebas de software son:

  1. Plan de prueba
  2. Escenario de prueba
  3. Caso de prueba
  4. Matriz de trazabilidad

Hablemos brevemente de cada uno de ellos.

  1. Plan de prueba: Le proporciona la estrategia general que se implementará para probar la aplicación.
  2. Escenario de prueba: El escenario de prueba se puede considerar como una instrucción de una sola línea que notifica el área en la que se experimentará su aplicación. Este artefacto es necesario para garantizar el procedimiento general probado de principio a fin.
  3. Caso de prueba :El caso de prueba no es más que un conjunto de condiciones o variables bajo las cuales un probador determinará si un sistema bajo prueba satisface los requisitos o funciona correctamente. Los casos de prueba mencionados a continuación se verifican durante las pruebas.
    • Casos de prueba funcional
    • Casos de prueba de error negativo
    • Casos de prueba lógicos
    • Casos de prueba física
    • Casos de prueba de interfaz de usuario
  4. Matriz de Trazabilidad: También se conoce como Matriz de Trazabilidad de Requisitos (RTM). Contiene una tabla que esboza los requisitos cuando se crea el modelo SDLC de su producto. Estos artefactos de documentación se pueden aplicar para el trazado hacia adelante, que va desde el diseño hasta la codificación, o también se pueden implementar para el trazado hacia atrás, que es el reverso del trazado hacia adelante.

Esto nos lleva al final de los Artefactos de Documentación de Pruebas de Software. Ahora, vayamos más allá en este artículo tutorial de pruebas de software y aprendamos qué es la gestión de defectos.

¿Cuál es el proceso de gestión de defectos?

La gestión de defectos es un proceso para detectar errores y corregirlos. Como los errores son parte de la industria del software, ocurren constantemente en el proceso de desarrollo de software. Los miembros del equipo deben escribir grandes piezas de código todos los días, y por lo general no tienen tiempo para pensar en cómo evitar errores. Por lo tanto, cada proyecto de desarrollo de software requiere un proceso que ayude a detectar los defectos y corregirlos.

El proceso de gestión de defectos se lleva a cabo en la etapa de prueba del producto. Sin darse cuenta de esto, sería difícil entender la naturaleza del manejo de defectos.. Por lo general, los desarrolladores prueban su producto ellos mismos. Además, también hay un tipo de prueba que se basa en la participación del usuario. A los usuarios finales se les proporciona a menudo la capacidad de informar sobre los errores que han identificado. Sin embargo, esta no es la mejor manera de probar, porque los usuarios podrían no ser capaces de encontrar todos los errores.

El proceso de gestión de defectos generalmente incluye cuatro pasos.

  1. El primer paso es la etapa de detección de defectos
  2. El segundo paso está dedicado a la formulación de informes de errores
  3. El tercer paso es corregir el error.
  4. En el paso final, se crea la lista de errores

Ahora, vayamos más allá en el artículo tutorial de pruebas de software y comprendamos el proceso de detección de errores con la ayuda del ciclo de vida del error.

Ciclo de vida de error

Un ciclo de vida de defecto es un proceso en el que un defecto pasa por varias fases durante toda su vida útil. Comienza cuando se encuentra un defecto y termina cuando se cierra un defecto, después de asegurarse de que no se reproduzca. El ciclo de vida de un defecto está relacionado con el error encontrado durante la prueba.

El ciclo de vida de errores o defectos incluye los pasos que se muestran en la siguiente figura:

Ciclo de vida del error - Tutorial de prueba de software-Edureka
Fig: Ciclo de vida del error – Tutorial de prueba de software
  1. Nuevo: En este paso, si un defecto se registra y publicado por primera vez, su estado, como nuevo.
  2. Asignado: Después de que el probador haya publicado el error, el líder del probador aprueba que el error es genuino y asigna el error a un desarrollador correspondiente y al equipo de desarrolladores. Es el estado dado como asignado.
  3. Abierto: En este estado, el desarrollador ha comenzado a analizar y trabajar en la corrección de defectos.
  4. Corregido: A medida que el desarrollador realiza los cambios de código necesarios y verifica los cambios, puede hacer que el estado del error sea ‘Corregido’ y el error se pase al equipo de pruebas.Prueba
  5. : En esta etapa, el comprobador realiza la prueba del código modificado que el desarrollador le ha devuelto para verificar si el defecto se ha corregido o no.
  6. Verificado: Aquí, el probador prueba el error de nuevo después de que el desarrollador lo arreglara. Si no hay ningún error en el software, aprueba que el error se corrija y cambia el estado a «verificado».
  7. Reabrir: En caso de que el error siga existiendo incluso después de que el desarrollador lo haya solucionado, el comprobador cambia el estado a «reabrido». En este estado, el insecto pasa por el ciclo de vida una vez más.
  8. Cerrado: Tan pronto como se corrige el error, el comprobador lo prueba. En caso de que el probador sienta que el error ya no existe en el software, cambia el estado del error a «cerrado». Implica que el error se ha corregido, probado y aprobado.
  9. Duplicado: En el ciclo de vida del error, si el error se repite dos veces o los dos errores mencionan el mismo concepto del error, un estado de error se cambia a «duplicado».
  10. Rechazado: Si en caso de que el desarrollador sienta que el error no es genuino, lo rechaza. A continuación, el estado del error se cambia a «rechazado».
  11. Diferido: Si el error se cambia a estado diferido, significa que se espera que el error se corrija en las próximas versiones.

Todo esto se trataba del Ciclo de Vida de los Errores y el Proceso de Gestión de Defectos. Ahora, veamos cuáles son los desafíos con las pruebas manuales.

Desafíos con Pruebas manuales

Las pruebas de una aplicación realizadas manualmente por evaluadores de control de calidad se conocen como Pruebas manuales. Aquí, todas las pruebas deben realizarse manualmente en cada entorno, utilizando un conjunto de datos diferente y se debe registrar la tasa de éxito/ fracaso de cada transacción.

Desafíos de pruebas manuales-Tutorial de pruebas de software-Edureka

En la figura anterior se puede ver a un hombre que verifica manualmente las transacciones registradas. Puede notificar fácilmente los desafíos que enfrenta puede causar fatiga, aburrimiento, retraso en el trabajo, errores y errores debido al esfuerzo manual. Esto llevó a la aparición de pruebas de automatización.
Ahora, profundicemos en el último tema del artículo tutorial de pruebas de software y veamos cómo las pruebas de automatización superan a las pruebas manuales.

Pruebas de automatización vs Pruebas manuales

Las pruebas de automatización superan las pruebas manuales en todo momento. ¿Por qué? Debido a que es superrápido, requiere muy menos inversión en recursos humanos, no es propenso a errores, es posible la ejecución frecuente de pruebas, admite pruebas de regresión y también pruebas funcionales.

Tomemos un ejemplo y entendamos esto. Supongamos que tiene una página de inicio de sesión y necesita verificar si todos los intentos de inicio de sesión son exitosos, entonces será muy fácil escribir un fragmento de código que validará si todos los intentos de transacción/ inicio de sesión son exitosos o no (ejecución automatizada de casos de prueba).

Todas estas pruebas se pueden configurar de tal manera que se prueben en diferentes entornos y navegadores web. No solo eso, también puede automatizar la generación del archivo de resultados, programándolo para un momento particular durante el día. A continuación, también puede automatizar la generación de informes basados en esos resultados y lo que no.

 Pruebas de automatización - Tutorial de pruebas de software-Edureka El punto importante aquí es que las pruebas de automatización hacen que el trabajo de un probador sea mucho más simple. Consulte la imagen de arriba que muestra un ambiente más relajado en el que el mismo probador está trabajando. Si desea saber más sobre las Pruebas de automatización y la herramienta de Pruebas de automatización ampliamente utilizada Selenium, puede consultar este Tutorial de Selenium.

Todo esto se trataba de cómo las pruebas de automatización se abren paso en el campo de las pruebas de software. Esto nos lleva al final del artículo sobre Tutorial de Pruebas de software. Espero que lo haya encontrado informativo y que haya ayudado a agregar valor a su conocimiento.

Si le pareció relevante este «Tutorial de Prueba de Software», eche un vistazo a la Capacitación de Certificación Selenium en línea en vivo de Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250,000 estudiantes satisfechos repartidos por todo el mundo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Previous post Fabricación de Jabón de gelatina: ¡Gelatinas Divertidas, Brillantes y Jabonosas!
Next post Gyromitra esculenta (Pers. ex Pers.) Fr., 1849