Pruebas convencionales frente a pruebas orientadas a objetos
La prueba de software es uno de los pasos más importantes en el proceso de desarrollo de software. Las pruebas de software garantizan que el software desarrollado satisfaga todos los requisitos del cliente y se ejecute sin errores. A medida que los paradigmas y técnicas de desarrollo de software han cambiado del desarrollo inicial de software en cascada a OOD / Agile y otros conceptos más nuevos, las pruebas también han cambiado de las pruebas convencionales (tradicionales) a las pruebas orientadas a objetos (OOT). Pero debido a que el desarrollo en cascada todavía está en uso, los evaluadores aún utilizan las pruebas convencionales.
¿Qué son las pruebas convencionales?
El proceso de prueba convencional tiene lugar principalmente cuando el ciclo de vida en cascada se utiliza para desarrollar software en las organizaciones. Las pruebas convencionales siempre tienen lugar durante la fase de prueba del ciclo de vida, que normalmente sigue a la fase de desarrollo y prosigue con la fase de implementación. Durante esta fase de prueba, se realizarán principalmente tres tipos de pruebas. Las pruebas del sistema asegurarán que las características del sistema satisfagan los requisitos del cliente documentados en la SRS (Especificación de requisitos de software), generalmente adoptando un enfoque de caja negra. Las pruebas de integración prueban el diseño preliminar adoptando un enfoque funcional y de descomposición. Las pruebas de integración se basan en la estructura del diseño utilizando un enfoque de arriba hacia abajo o de abajo hacia arriba. Finalmente, las pruebas unitarias aseguran que el diseño detallado sea correcto.
¿Qué son las pruebas orientadas a objetos?
El uso de análisis y diseño orientados a objetos (OO) junto con Agile y otras metodologías de desarrollo de software recientes conducen a pruebas orientadas a objetos. El desarrollo de OO generalmente se centra en el comportamiento. Las pruebas se realizan con énfasis en la composición. Eso significa que el diseño se crea pieza a pieza y se compone en conjunto para completar el sistema completo. Debido a que hoy en día se utilizan prototipos rápidos y alguna forma de enfoque incremental para el desarrollo de OO, los tres niveles de prueba convencionales (sistema, integración y pruebas unitarias) no son claramente visibles en el diseño de OO (pero existen la mayoría de las veces). Las pruebas del sistema (bajo pruebas OO) adoptarán el mismo enfoque (caja negra) que las pruebas convencionales y comprobarán la especificación de requisitos (porque los requisitos deben verificarse independientemente del proceso de desarrollo). La prueba unitaria bajo prueba orientada a objetos es similar a la prueba unitaria convencional, pero la diferencia básica es la definición de la unidad utilizada. Las unidades actualmente aceptadas que se utilizan para las pruebas unitarias son clases y métodos.
¿Cuál es la diferencia entre las pruebas convencionales y las pruebas orientadas a objetos?
Las pruebas convencionales son el enfoque tradicional para las pruebas que se realizan principalmente cuando se usa el ciclo de vida de la caída de agua para el desarrollo, mientras que las pruebas orientadas a objetos se usan cuando se usa el análisis y el diseño orientados a objetos para desarrollar software empresarial. Las pruebas convencionales se centran más en la descomposición y los enfoques funcionales que las pruebas orientadas a objetos, que utilizan la composición. Los tres niveles de prueba (sistema, integración, unidad) utilizados en las pruebas convencionales no están claramente definidos cuando se trata de pruebas orientadas a objetos. La razón principal de esto es que el desarrollo orientado a objetos utiliza un enfoque incremental, mientras que el desarrollo tradicional sigue un enfoque secuencial. En términos de pruebas unitarias, las pruebas orientadas a objetos miran unidades mucho más pequeñas en comparación con las pruebas convencionales.