Cantata es una herramienta para realizar pruebas dinámicas de unidades e integración C y C++. El marco de pruebas proporciona un alto grado de automatización para la generación, ejecución y análisis de pruebas que se ajusten a su flujo de trabajo de desarrollo

La automatización del marco de pruebas integrado permite a los desarrolladores cumplir con los requisitos de pruebas de las normas de seguridad del software e implementar las mejores prácticas de la industria.

El marco de pruebas de Cantata le permite seleccionar las formas más efectivas y eficientes para desarrollar y gestionar las pruebas en función de su flujo de trabajo.

El marco de pruebas de Cantata también se puede ampliar fácilmente o integrar directamente con la integración continua y las herramientas de análisis estático para una mayor sincronización y automatización de las actividades de prueba.

Cantata proporciona un marco de pruebas integrado (scripts de pruebas y una biblioteca de apoyo) que permite cualquier combinación de estilos de pruebas de integración de unidades y escalable. Las pruebas pueden editarse en una GUI o directamente como código C/C++, y ejecutarse como ejecutables tanto en el host como en múltiples plataformas de destino.

 

El código de usuario se controla mediante scripts de pruebas portátiles con bibliotecas compatibles de destino y se crea como un único archivo ejecutable de pruebas para ejecutarse en varias plataformas de host o destino. La instrumentación se utiliza para el acceso a la caja blanca y la cobertura de código, por lo que el código de producción nunca se modifica para la prueba.

"Cantata puede utilizarse sin problemas para distintos objetivos. Lo hemos hecho tanto para nuestros sistemas EMU como EIPM del A380".

Philippe Lomazzi, Jefe de Desarrollo de Software, Meggitt Avionics

"Pronto, todos los desarrolladores realizaban las pruebas siguiendo exactamente el mismo estándar. Mantener los guiones de prueba de los demás resultó mucho más fácil gracias a esta estandarización".

Philippe Lomazzi, Jefe de Desarrollo de Software, Meggitt Avionics

"Con Cantata hemos encontrado errores que, de otro modo, habríamos pasado por alto más tarde."

Dave Parker, Ingeniero de software, Marconi Communications

Configuración de proyectos de pruebas para ajustarse a su flujo de trabajo

Los proyectos Eclipse de pruebas de Cantata se pueden configurar de 5 formas flexibles con el fin de ajustarse mejor a su flujo de trabajo normal:

  • Utilice un proyecto existente de Eclipse
  • Cree un espacio de trabajo sobre el código fuente
  • Cree un proyecto en el código fuente o sobre el mismo
  • Vincule el directorio fuente en un proyecto
  • Copie el código fuente a un proyecto

Los proyectos de prueba se pueden configurar para enfoques de prueba de unidades de abajo hacia arriba, de arriba hacia abajo o de aislamiento, y para pruebas de integración de Cantata o de control externo.

Generación de pruebas

El código fuente se analiza para obtener un modelo completo (archivo .csi) del código, por lo que se pueden generar pruebas estructuradas a partir de él. Los scripts de prueba de C/C++ se generan dentro de los proyectos de pruebas con los correspondientes archivos Makefiles de Cantata para la prueba de regresión automatizada.

Los scripts de pruebas de Cantata se generan a partir de uno o más archivos de código fuente seleccionados, y pueden contener varios estilos de casos de pruebas:

  • Un solo caso de prueba por función en el código
  • Varios casos de pruebas controlados mediante tablas, con varios valores de entrada definidos por el usuario
  • Pruebas de resistencia, con múltiples valores de entrada predefinidos
  • AutoTest (véase la sección capacidad de AutoTest para obtener más información)

Edición de pruebas

Los scripts de pruebas y los archivos Makefiles se pueden editar con un Administrador de scripts de pruebas gráfico sincronizado o cualquier editor de código C/C ++.

 

Los valores predeterminados iniciales se establecen para las entradas, las salidas esperadas y el orden de llamada esperado para la edición iterativa rápida de casos de pruebas. Las llamadas a función se controlan (simuladas o interceptadas) en el script de pruebas.

Vea la sección Capacidad de control de llamada única para obtener más información

Control de creación y ejecución en el objetivo

Todos los archivos relacionados con Cantata se almacenan en el directorio «Cantata» en el nivel superior de un proyecto. Esto permite que los archivos de pruebas coexistan con sus archivos fuente en una jerarquía autocontenida y que se puedan administrar fácilmente con herramientas de control de versiones.

Las pruebas se crean con el código analizado, mediante su mecanismo estándar en el host como ejecutables compatibles binarios, y se descargan para ejecutarse en una plataforma objetivo a través del IDE o la barra de comandos.

Cantata se puede implementar en una amplia gama de objetivos (véase la sección Cantata Funciona en su Entorno). La implementación y el uso flexibles de diferentes creaciones y opciones de I/O, significa que Cantata funciona a la perfección con su entorno de desarrollo objetivo y le permite probar el código con software, hardware o procesador en el bucle.

Las pruebas independientes de la plataforma se pueden reutilizar en múltiples objetivos, a través del control de múltiples configuraciones de despliegue objetivo de Cantata.

Automatización de la integración continua y pruebas de regresión

Una vez que se crean y pasan las pruebas, continuar ejecutándolas para que los errores de regresión no se introduzcan en el código que funcionaba anteriormente es la razón por la que se realizan las pruebas de regresión. Estas pruebas automatizadas con Cantata son compatibles mediante el uso de herramientas de integración continua como Jenkins®.

 

 

A medida que las pruebas de Cantata se desarrollan en la GUI, se genera un conjunto de archivos Makefiles para compilar, vincular, implementar, ejecutar y recuperar resultados de la plataforma objetivo. Los archivos Makefiles de Cantata se pueden utilizar con su árbol de código existente y sus propios archivos Makefiles (con lo que se evita tener copias separadas del código en un sandbox solo para pruebas).

 

Los archivos Makefile de Cantata también pueden realizar cualquier combinación o realizar acciones de prueba o creación anterior y posterior, y le ofrecen un control absoluto sobre la inicialización y los informes del entorno. Permiten la integración con otras herramientas como QA-C (para mantener sincronizadas las pruebas estáticas y dinámicas) y Jenkins® (para una integración continua) durante todo el desarrollo y las pruebas de regresión..

Elaboración de diagnósticos e informes

Cantata proporciona potentes vistas de Eclipse examinadas a fondo para elaborar diagnósticos precisos de resultados de pruebas funcionales y cobertura de códigos integrados. En aquellos casos en los que se requieran diagnósticos más específicos, la ejecución de la prueba se puede realizar con el control de un depurador.

 

Se generan informes configurables RTF, XML y HTML junto con el texto ASCII y HTML listo para certificación..

 

Los diagnósticos e informes también se pueden mejorar y añadir a múltiples usuarios a través del complemento opcional de  Cantata Team Reporting.

Generación de evidencia de cumplimiento de certificación

Cantata viene con una guía específica de normas seguridad de herramientas integral para la creación, ejecución y gestión de pruebas para pruebas de normas de seguridad de software.

 

Los resultados de las pruebas funcionales y la cobertura del código listos para la certificación de Cantata se producen automáticamente en formato de texto ASCI, directamente desde la plataforma objetivo

 

Junto con el kit de certificación/calificación de la herramienta adecuado y la evidencia de implementación de destino, esto proporciona toda la evidencia de las pruebas de software necesarias para la presentación de la certificación del software del dispositivo

El marco de pruebas integrado de Cantata definido anteriormente se puede utilizar para cumplir con los requisitos de las normas de seguridad de software y las mejores prácticas de la industria. Para obtener información más detallada sobre la creación y ejecución de pruebas y los requisitos de una norma concreta, consulte nuestro amplio conjunto de recursos.