La prueba funcional es un proceso de aseguramiento de la calidad (QA) [1] y un tipo de prueba de caja negra que basa sus casos de prueba en las especificaciones del componente de software bajo prueba. Las funciones se prueban alimentándolas de entrada y examinando la salida, y la estructura interna del programa rara vez se considera (a diferencia de las pruebas de caja blanca ). [2] Las pruebas funcionales se llevan a cabo para evaluar el cumplimiento de un sistema o componente con los requisitos funcionales especificados . [3] Las pruebas funcionales generalmente describen lo que hace el sistema.
Dado que las pruebas funcionales son un tipo de prueba de caja negra, la funcionalidad del software se puede probar sin conocer el funcionamiento interno del software. Esto significa que los probadores no necesitan saber lenguajes de programación o cómo se ha implementado el software. Esto, a su vez, podría conducir a una reducción del sesgo del desarrollador (o sesgo de confirmación ) en las pruebas, ya que el evaluador no ha participado en el desarrollo del software. [4]
Las pruebas funcionales no implican que esté probando una función (método) de su módulo o clase. Las pruebas funcionales prueban una parte de la funcionalidad de todo el sistema.
Las pruebas funcionales difieren de las pruebas del sistema en que las pruebas funcionales " verifican un programa comparándolo con ... documento (s) de diseño o especificaciones", mientras que las pruebas del sistema " validan un programa comparándolo con el usuario publicado o requisitos del sistema ". [5]
Tipos
Las pruebas funcionales tienen muchos tipos: [2]
Seis Pasos
Las pruebas funcionales generalmente implican seis pasos [ cita requerida ]
- La identificación de las funciones que se espera que realice el software.
- La creación de datos de entrada basados en las especificaciones de la función.
- La determinación de la salida basada en las especificaciones de la función.
- La ejecución del caso de prueba
- La comparación de resultados reales y esperados
- Para comprobar si la aplicación funciona según las necesidades del cliente.
Ver también
- Pruebas no funcionales : prueba de software de computadora para la forma en que opera en lugar de comportamientos o funciones específicas
- Prueba de aceptación : prueba para determinar si se cumplen los requisitos de una especificación o contrato
- Prueba de regresión : verificar si los cambios en el software han roto la funcionalidad que solía funcionar
- Prueba del sistema : prueba realizada en un sistema de software integrado completo
- Prueba de software : examen de cuán eficiente y confiable es el software para realizar su función prevista
- Pruebas de integración : la fase de las pruebas de software en la que los módulos de software individuales se combinan y prueban como un grupo.
- Prueba unitaria : método de prueba de software mediante el cual se validan unidades individuales de código fuente
- Base de datos de prueba - El ensayo de sistemas de software de base de datos
- Pruebas de seguridad : el proceso de encontrar fallas en la seguridad de los sistemas de información.
- Prueba de carga : proceso de exigir un sistema de software y medir su respuesta.
- Automatización de pruebas : uso de software especial (separado de lo que se está probando) para controlar la ejecución de las pruebas y comparar los resultados reales con los resultados previstos.
Referencias
- ^ Prasad, Dr. KVKK (2008) Guía de estudio de certificación ISTQB , Wiley, ISBN 978-81-7722-711-6 , p. vi
- ^ a b Kaner, Falk, Nguyen. Prueba de software informático . Wiley Computer Publishing, 1999, pág. 42. ISBN 0-471-35846-0 .
- ^ Norma internacional ISO / IEC / IEEE - Ingeniería de software y sistemas . ISO / IEC / IEEE 24765: 2010 (E). 2010. págs. Vol., No., Págs. 1-418, 15 de diciembre de 2010.
- ^ Calikli, Gul; A. Uzundag, Berna; Bener, Ayse (19 de septiembre de 2010). "Sesgo de confirmación en el desarrollo y las pruebas de software: un análisis de los efectos del tamaño de la empresa, la experiencia y las habilidades de razonamiento" , a través de ResearchGate.
- ^ Kaner, Falk, Nguyen 1999, p. 52