X
BLOG

Simplifique y optimice las pruebas integradas con la nueva versión 2021.1 de la prueba Parasoft C / C ++

Simplifique y optimice las pruebas integradas con la nueva versión 2021.1 de la prueba Parasoft C / C ++ Tiempo de leer: 5 minutos

Los equipos de pruebas y desarrollo integrados obtienen la velocidad y la eficiencia de una canalización de CI / CD moderna y altamente automatizada con el lanzamiento de Parasoft Prueba C / C ++ 2021.1. La última versión proporciona a los equipos pruebas unitarias y estáticas totalmente integradas para brindar cumplimiento y calidad continuos.

La nueva versión continúa con su soporte integral para los últimos estándares de cumplimiento, incluida la versión más reciente de MISRA C 2012. Para lograr el cumplimiento de manera eficiente con las pautas de seguridad DISA ASD STIG, la versión C / C ++ test 2021.1 presenta una nueva configuración y soporte.

Esta versión presenta nuevas capacidades para el análisis de la arquitectura de software y continúa nuestro enfoque en los flujos de trabajo basados ​​en Git.

  • Integración dedicada de GitHub con nuevos informes de análisis estático en formato SARIF
  • Soporte para el análisis y la aplicación de la arquitectura de software (integración Lattix Architect)
  • Extensión mejorada para el complemento de código de Visual Studio

Otras mejoras importantes incluyen:

  • Nueva extensión de cobertura de código para proyectos CMake
  • Implementaciones de prueba optimizadas de C / C ++
  • Soporte para informes de trazabilidad de requisitos de Jama
  • Soporte para nuevos compiladores e IDE

Integración dedicada de GitHub

La integración de prueba de C / C ++ con los flujos de trabajo de GitHub ahora está optimizada. La nueva versión proporciona una acción de GitHub dedicada, Ejecute la prueba de Parasoft C / C ++, que le permite ejecutar análisis de código con la prueba Parasoft C / C ++ y revisar los resultados del análisis directamente en GitHub. La documentación de Action incluye ejemplos de los flujos de trabajo de GitHub que puede usar como base para sus flujos de trabajo. Leer más sobre la prueba de C / C ++ Acción de GitHub.

Captura de pantalla el flujo de trabajo de GitHub que incluye los resultados del análisis estático de prueba C / C ++ disponibles en la pestaña Seguridad, como "Alertas de escaneo de código".

La nueva acción de GitHub simplifica la integración de pruebas de C / C ++ en los flujos de trabajo y permite nuevos informes de análisis estático en formato SARIF, que se cargan automáticamente en GitHub. Cuando se incluye la prueba C / C ++ en el flujo de trabajo de GitHub, los resultados del análisis estático están disponibles en la pestaña Seguridad como "Alertas de escaneo de código". También se incluyen en sus solicitudes de extracción. Esto hace que la implementación del análisis estático sea perfecta y completamente integrada con sus flujos de trabajo.

Soporte para el análisis y la aplicación de la arquitectura de software con la integración de Lattix Architect

La arquitectura de software adecuada tiene un impacto tremendo en el esfuerzo de desarrollo, pruebas, cumplimiento y mantenimiento. Los equipos que prestan atención a la calidad de su arquitectura obtienen beneficios a corto y largo plazo. Nuestra última versión trae nuevas capacidades para analizar, definir y hacer cumplir la arquitectura de software con el Arquitecto Lattix integración.

Captura de pantalla los datos de análisis de código de Lattix Architect producidos por la prueba C / C ++ mostrados en una vista visual única basada en la tecnología de matriz de estructura de dependencia (DSM).

Lattix Architect se basa en datos de análisis de código producidos por la prueba C / C ++ y ofrece su visualización única, basada en matriz de estructura de dependencia (DSM), para identificar y solucionar rápidamente problemas de arquitectura. Muchos clientes han accedido a la visualización basada en DSM para que sea más fácil de entender que la representación basada en gráficos, especialmente para proyectos más grandes. Una buena comprensión de las dependencias del software ayuda a perfeccionar las compilaciones, las pruebas y la satisfacción de los requisitos de cumplimiento de la arquitectura de software.

El mapa de calor es otra vista útil que agrega cobertura de código, análisis estático y hallazgos de arquitectura en una vista holística de la calidad del código. Muestra todos los datos de calidad críticos a través de la lente de la arquitectura, lo que ayuda a exponer las brechas de cumplimiento y, por lo tanto, los riesgos comerciales.

Además, los equipos pueden incluir pruebas de C / C ++ y Lattix Architect en el flujo de trabajo de CI / CD y producir informes que se integran con las solicitudes de combinación.

Seminario web bajo demanda: Logre un cumplimiento más rápido de ISO 26262 con Lattix y Parasoft en una canalización de CI de GitLab

Extensión mejorada para el complemento de código de Visual Studio

La popularidad de nuestra extensión para Visual Studio Code continúa creciendo y, como resultado, continuamos mejorándola. Nuestra actualización más reciente simplifica el uso de VSCode para flujos de trabajo de CI / CD.

Los usuarios ahora pueden descargar los resultados del análisis estático generados en la canalización directamente a este editor de código favorito y trabajar en los problemas sin cambiar entre VSCode y el navegador. ¡Estas pequeñas cosas de productividad nos importan!

También hay un comando dedicado para GitHub, que reconoce su repositorio actual y encuentra automáticamente la ubicación del informe de análisis estático producido por el Ejecute la prueba de Parasoft C / C ++ en GitHub acción. Una vez que se importan los resultados, puede analizarlos en la vista Problemas y saltar directamente al código del problema para solucionarlo.

Captura de pantalla de la extensión mejorada del complemento de código de Visual Studio que muestra los resultados de carga de prueba de C / C ++ de GitHub

Existe una variante más genérica de esta acción que permite descargar los resultados del análisis estático de la prueba C / C ++ utilizando una ubicación URL. Puede usarlo para acceder a los resultados producidos por Jenkins u otra plataforma CI / CD. Para obtener más información sobre esta funcionalidad, descargar o actualizar la extensión desde Microsoft Marketplace. Vaya a la pestaña Detalles de la página principal de la extensión.

Nueva extensión de cobertura de código para proyectos de CMake

Si usa CMake para construir su código, ahora puede integrar sin problemas las mediciones de cobertura de código en su proyecto y obtener una mejor comprensión de la integridad de sus pruebas para satisfacer los requisitos de estándares de seguridad funcional en la cobertura de código.

La cobertura del código de prueba C / C ++, a diferencia de gcov, admite todas las métricas de cobertura relevantes, incluida la cobertura de declaración, rama, MC / DC, función y llamada que son importantes para estándares como ISO 26262.

Nuestra nueva extensión también genera informes de cobertura de código a partir de su integración y pruebas a nivel de sistema, que luego puede fusionar con el informe de cobertura de código de prueba de unidad ya disponible.

Agregar la extensión a su proyecto es bastante simple. Todo lo que necesita hacer es agregar una directiva de "inclusión" a su archivo CMakeLists.txt existente y eso es todo. La extensión ya ha sido validada en combinación con los motores de construcción Make y Ninja.

Uso de la prueba Parasoft C / C ++ con CMake para pruebas unitarias

Para los practicantes actuales de Parasoft, el ejemplo del proyecto “Timer” existente desde hace mucho tiempo se ha ampliado para demostrar el uso de la prueba Parasoft C / C ++ con CMake para pruebas unitarias.

Implementaciones de prueba C / C ++ optimizadas

En la versión 2020.2, presentamos una versión preliminar de nuestros instaladores simplificados basados ​​en archivos para C / C ++ Test Professional (Eclipse). En la versión actual 2021.1, los instaladores basados ​​en archivos son oficiales y reemplazan a los instaladores de estilo ejecutable ahora obsoletos. Esto es parte de nuestro esfuerzo continuo por optimizar y modernizar las implementaciones en la era de la nube, la virtualización y la contenedorización.

Si aún no tuvo la oportunidad de actualizar su proceso de instalación, aún puede descargar los instaladores heredados a través del Portal del cliente. Tenga en cuenta que planeamos eliminarlos en una versión futura.

La transición a los nuevos instaladores es excepcionalmente fluida según los comentarios de todos nuestros primeros usuarios. Si está utilizando la prueba C / C ++ de forma independiente, todo lo que necesita hacer es descomprimir el paquete en cualquier lugar que desee y comenzar a usar la herramienta. Para aquellos que ya tienen un proceso de implementación automatizado, que por ejemplo incluye la preparación de contenedores Docker, sus scripts seguramente serán más simples de configurar.

Si necesita más información, hay una breve guía de migración disponible en el Portal del Cliente para facilitar su cambio.

Soporte para la trazabilidad y la generación de informes de los requisitos de Jama

Entre las muchas integraciones que hemos agregado en esta versión, hay una integración con Jama connect, para la trazabilidad de requisitos, el riesgo y la gestión de pruebas.

Con esta nueva integración, los resultados de las pruebas de unidades de prueba C / C ++ se correlacionan en Parasoft DTP con los requisitos de Jama y se presentan en forma de informes de trazabilidad que son necesarios para el cumplimiento de los estándares de seguridad funcional. DTP también propaga los resultados de las pruebas unitarias a Jama incorporándolos a los requisitos o especificaciones de prueba adecuados.

Además, al revisar el análisis estático o los resultados de las pruebas unitarias en DTP, los usuarios pueden crear automáticamente un elemento / tarea de trabajo en Jama para abordar las violaciones de codificación identificadas y los errores de software.

Soporte para nuevos compiladores e IDE

Con 2021.1 presentamos la integración con la versión 10.x de Code Composer Studio de Texas Instrument y, como es habitual, una colección de las nuevas configuraciones de compilador compatibles. He aquí una lista rápida.

  • Compilador IAR BXARM para ARM v. 8.50.x
  • Compilador de software Green Hills para ARM64 v. 2020_1.x
  • QNX GCC 8.x (x86-64)
  • QNX GCC 8.x (ARM64)
  • Compilador TI ARM C / C ++ v20.2

Mirando hacia el futuro

Con más y más equipos en transición a plataformas CI / CD basadas en Git, continuaremos nuestros esfuerzos para simplificar nuestras integraciones en estos sistemas populares. De manera similar, como lo hicimos con GitHub en la versión actual, planeamos construir integraciones con otras soluciones populares de CI / CD. Además, estudiaremos la posibilidad de adoptar nuevas reglas de análisis estático, que proporcionen una cobertura de código aún más optimizada y muchas otras características valiosas.

Novedades de la versión de prueba de Parasoft C / C ++
Escrito por

Miroslaw Zielinski

Gerente de producto para las soluciones de prueba integradas de Parasoft, las especialidades de Miroslaw incluyen C / C ++, RTOS, análisis de código estático, pruebas unitarias, gestión de la calidad del software para aplicaciones críticas para la seguridad y cumplimiento del software con los estándares de seguridad.

Reciba las últimas noticias y recursos sobre pruebas de software en su bandeja de entrada.

Prueba Parasoft