Logotipo de Parasoft

WEBINAR

Vea cómo integrar GoogleTest en sistemas críticos para la seguridad con confianza

GoogleTest es ampliamente reconocido como el estándar de facto para pruebas unitarias en C++, valorado por su flexibilidad, sintaxis moderna e integración fluida con las cadenas de herramientas de desarrollo más populares. Sin embargo, GoogleTest por sí solo no cumple con los rigurosos estándares de trazabilidad, cobertura de código y certificación requeridos en sectores regulados, como el automotriz, el aeroespacial, el médico y el ferroviario.

Vea este seminario web informativo donde exploraremos cómo adoptar GoogleTest con éxito en entornos de desarrollo críticos para la seguridad. Descubrirá cómo Parasoft C/C++test CT mejora GoogleTest con potentes funciones como trazabilidad de requisitos, cobertura de MC/DC, informes de cumplimiento y compatibilidad con pipelines de CI/CD.

 

Uso de GoogleTest en sistemas críticos para la seguridad: cumplimiento, cobertura y mejora continua que realmente funcionan

Esta sesión explicó cómo los equipos pueden adoptar o seguir utilizando GoogleTest en proyectos críticos para la seguridad Sin tropezar con el cumplimiento normativo. Los ponentes mostraron dónde destaca GoogleTest, dónde se queda corto y cómo Parasoft C/C++test CT soluciona los problemas con cobertura de código, trazabilidad de requisitos e informes de cumplimiento.

Puntos clave

  • GoogleTest es gratuito, liviano y tiene una barrera de entrada baja, pero necesita extras para industrias donde la seguridad es crítica.
  • Parasoft C/C++test CT agrega cobertura de código estructural, informes de cumplimiento y trazabilidad de requisitos además de GoogleTest.
  • Las soluciones presentadas están diseñadas para integrarse perfectamente en los pipelines de CI modernos, reforzando controles de calidad que detectan defectos no detectados en las primeras etapas del SDLC.
  • La certificación TÜV es importante cuando aparecen las auditorías; C/C++test CT está certificado y la calificación de GoogleTest está en proceso.

¿Por qué GoogleTest es popular?

GoogleTest es fácil de configurar y se integra en los sistemas de compilación más populares. La API es clara, las aserciones son claras y GoogleMock facilita el manejo de dependencias complejas. Para muchos equipos, esto es suficiente para que las pruebas unitarias se ejecuten rápidamente.

Pero la velocidad por sí sola no cumple con estándares de seguridad como ISO 26262, DO-178C, IEC 62304 o EN 50128. Los auditores piden pruebas: qué se probó, cuánto código se cubrió y qué requisitos verifican esas pruebas.

La brecha de seguridad crítica de GoogleTest

GoogleTest no compra funciones que exigen los estándares de seguridad funcional, como:

  • Cobertura estructural (declaración, sucursal y MC/DC)
  • Pruebas y trazabilidad basadas en requisitos
  • Informes de cumplimiento y registro de auditoría
  • Uso de herramientas calificadas para garantizar la confiabilidad

Qué añade Parasoft C/C++test CT

C/C++test CT no reemplaza a GoogleTest. Se complementa con este y otros frameworks (como CppUnit o Boost.Test) para añadir los requisitos de verificación que faltan:

  • Cobertura: Declaración, sucursal y MC/DC, con un útil análisis de brechas
  • Trazabilidad bidireccional: Vincular pruebas a requisitos y generar informes
  • Flujo de trabajo de CI: Línea de comandos, contenedores e integración con amplios sistemas de compilación
  • Informes: HTML, JSON y paneles de control a través de Parasoft DTP
  • Pruebas en el objetivo: capturar resultados de hardware real cuando sea necesario
  • Titulación: C/C++test CT cuenta con certificación TÜV; se está preparando una distribución de GoogleTest con certificación TÜV

Comparacion rapida

ÁreaPrueba de GooglePrueba C/C++ CT
CostoFreeCon licencia
ConfiguraciónRápidoBasado en CLI, compatible con CI
GlobalBásico (mediante herramientas externas)Declaración, Sucursal, MC/DC
TrazabilidadManualEnlaces e informes integrados
InformesMinimoIntegración con HTML/JSON y panel de control
Certificación de herramientasNingunaCertificado por TÜV
Puertas CIGuiones personalizadosPuertas de calidad integradas
Carreras objetivoPosiblesCompatible con captura de cobertura

Flujo de trabajo de demostración: de la rama a la fusión

La demostración mostró el uso Prueba de Google con C/C++test CT en una configuración de CI en contenedores:

  • El desarrollador agrega una nueva función además de casos de GoogleTest y etiqueta cada prueba con ID de requisitos relacionados.
  • C/C++test CT recopila la cobertura durante la compilación. Los resultados se muestran en formato de texto, HTML y JSON, y la extensión de VS Code resalta las líneas cubiertas directamente en el editor.
  • Una solicitud de extracción activa la canalización. Las puertas de calidad verifican la declaración y el MC/DC en el nuevo código.
  • El primer intento falla en MC/DC. El informe de cobertura enumera los vectores de prueba faltantes e incluso propone el conjunto más pequeño para cerrar la brecha. El desarrollador añade una prueba para la cobertura de condición faltante y vuelve a enviar.
  • Las puertas pasan, el código se fusiona y la tubería de la rama principal envía los resultados de las pruebas a Parasoft DTP para conocer las tendencias, el progreso de la cobertura y el estado de cumplimiento.

Consejos prácticos para equipos

  • Mantenga GoogleTest, pero agregue C/C++test CT para cobertura de código, trazabilidad e informes.
  • Etiquete las pruebas con los ID de requisitos desde el primer día para facilitar la trazabilidad. No espere.
  • Considera MC/DC como una característica específica. Si no lo consigues, revisa tus condiciones o tus pruebas.
  • Utilice puertas de calidad CI para aumentar gradualmente la calidad del código sin ralentizar todo el repositorio.
  • Implementar cadenas de herramientas en contenedores para que las máquinas de desarrollo coincidan con CI.

La certificación y el camino a seguir

Las autoridades de verificación se preocupan por la certificación de herramientas. C/C++test CT ya cuenta con la certificación TÜV. Parasoft está trabajando para homologar GoogleTest para que los equipos lo utilicen en la verificación y validación de sistemas críticos para la seguridad.

Resumen Final

Para mejorar GoogleTest para equipos en industrias reguladas, Parasoft y C/C++test CT ofrecen el enlace certificado que faltaba y que cierra la brecha entre las exigencias innegociables de las normas de seguridad como ISO 26262 e IEC 62304. Transforma su flujo de trabajo de pruebas habitual en una herramienta potente, compatible y lista para auditorías.