¡Descubre GoogleTest, con certificación TÜV y la tecnología Agentic AI para pruebas de C/C++!
Obtenga los detalles »
Explora los capítulos
Como parte de la mayoría de los procesos de desarrollo de software en C y C++ , las pruebas de regresión se realizan después de introducir cambios en el software. Estas pruebas determinan si los nuevos cambios afectan al funcionamiento del software existente.
Las pruebas de regresión son necesarias, pero sólo indican que los cambios recientes en el código no han provocado que las pruebas fallen. No hay garantía de que estos cambios funcionen. Además, la naturaleza de los cambios que motivan la necesidad de realizar pruebas de regresión pueden ir más allá de la aplicación actual e incluir cambios en el hardware, el sistema operativo y el entorno operativo.
En el desarrollo de software crítico para la seguridad en C y C++ , la validación es fundamental para demostrar el correcto funcionamiento, la seguridad y la protección. Se requieren pruebas para confirmar cualquier cambio en la aplicación, garantizar su funcionalidad y verificar que no haya impactos imprevistos en el resto del sistema.
Si un caso de prueba que antes se aprobaba ahora falla, se ha identificado una posible regresión. La nueva funcionalidad podría ser la causa del error. Si es así, es posible que sea necesario actualizar el caso de prueba teniendo en cuenta esos cambios en los valores de entrada y salida.
Las pruebas de regresión de sistemas embebidos también incluyen la ejecución de:
Es posible que sea necesario ejecutar todos los casos de prueba creados previamente para garantizar que no existan regresiones y que se construya una nueva versión de software confiable. Esto es fundamental porque cada nueva versión de sistema o subsistema de software se construye o desarrolla a partir de ella. Si no se cuenta con una base sólida, todo puede derrumbarse.
Parasoft DTP permite crear líneas base para pruebas de regresión como una colección organizada de pruebas y verifica automáticamente todos los resultados. Estas pruebas se ejecutan automáticamente de forma periódica para comprobar si las modificaciones del código alteran o interrumpen la funcionalidad detectada en las pruebas de regresión.
Si se introducen cambios, estos casos de prueba no alertarán al equipo sobre el problema. Durante las pruebas posteriores, DTP informará las tareas si detecta cambios en el comportamiento capturado en la prueba inicial.
El principal desafío de las pruebas de regresión es determinar qué partes de una aplicación se deben probar. Es común ejecutar todas las pruebas de regresión de manera predeterminada cuando hay dudas sobre el impacto que han tenido los cambios recientes en el código: el enfoque de todo o nada.
En el caso de proyectos de software C y C++ de gran envergadura, esto se convierte en una tarea enorme y reduce la productividad del equipo. Esta incapacidad para centrarse en las pruebas impide aprovechar en gran medida los beneficios de los procesos iterativos y continuos, lo que puede verse agravado en el caso del software integrado, donde los objetivos de las pruebas son un recurso limitado.
Aquí se requieren un par de tareas.
Los desarrolladores y evaluadores pueden obtener una comprensión clara de los cambios en la base de código entre compilaciones utilizando el motor de inteligencia de procesos (PIE) dentro de Parasoft DTP combinado con nuestros motores de análisis de cobertura propietarios:
Para Java
Para C# y VB.NET
Con estas combinaciones, los equipos pueden mejorar la eficiencia y lograr la promesa de Agile.
Esta forma de ejecución de pruebas inteligentes se denomina análisis del impacto de las pruebas y, a veces, pruebas basadas en cambios.
El análisis de impacto de las pruebas utiliza datos recopilados durante las ejecuciones de pruebas y los cambios en el código entre compilaciones para determinar qué archivos se modificaron y qué pruebas específicas los afectaron. El motor de análisis de Parasoft puede analizar la diferencia entre dos compilaciones e identificar el subconjunto de pruebas de regresión que deben ejecutarse. Además, comprende las dependencias de las unidades modificadas para determinar el efecto en cadena que los cambios tienen en otras unidades.
Las soluciones de prueba de software Jtest para Java y dotTEST para C# y VB.NET de Parasoft ofrecen información valiosa sobre el impacto de los cambios en el software. Cada solución recomienda dónde agregar pruebas y dónde se necesitan pruebas de regresión adicionales. Consulte el ejemplo de informe de pruebas basado en cambios a continuación.
Un ejemplo de informe de pruebas basadas en cambios de Parasoft DTP muestra áreas probadas y no probadas del código.
Explora los capítulos