Pruebas funcionales para verificación
Puede utilizar Simulink® Test™ para crear, gestionar y ejecutar pruebas para modelos de Simulink y código generado. Test Manager ofrece una forma interactiva de crear pruebas desde cero, importar datos de prueba y modelos de arnés existentes, y organizar las pruebas. Puede ejecutar pruebas de manera individual, en lotes o como subconjunto filtrado del archivo de prueba, así como controlar parámetros y realizar iteraciones sobre valores de parámetros. Los modos en los que se pueden ejecutar las pruebas son dentro del modelo, software-in-the-loop (SIL), processor-in-the-loop (PIL), and hardware-in-the-loop (HIL). Para ejecutar pruebas de HIL, el equipo objetivo debe tener instalado Simulink Real-Time™. También puede ejecutar las mismas pruebas de forma consecutiva en varias versiones de MATLAB®.
Los resultados incluyen un breve resumen de aprobación/fallo para elementos en la jerarquía de la prueba, iteraciones, casos de prueba, conjuntos de pruebas y el archivo de prueba. Las herramientas de visualización permiten profundizar en conjuntos de datos individuales para determinar, por ejemplo, el momento y la causa de un error concreto. Los resultados de cobertura de Simulink Coverage™ ayudan a cuantificar en qué medida se ha probado el modelo o el código.
Por ejemplo, puede:
Comparar resultados entre el modelo y el código generado ejecutando pruebas de equivalencia consecutivas entre distintos entornos, como la simulación de modelos y la ejecución en SIL, PIL y HIL. La cobertura no se admite con bloques SIL o PIL.
Optimizar el modelo o código iterando sobre valores paramétricos o parámetros de configuración.
Empezar las pruebas en nivel unitario usando arneses de pruebas y reutilizarlas cuando se expanda al nivel de integración y de sistema.
Ejecutar modelos que contengan vectores de prueba y evaluaciones dentro del diagrama de bloques de Simulink.
Simulink Test incluye una interfaz programática completa para escribir scripts de prueba. Las pruebas de Simulink pueden integrarse con pruebas de MATLAB mediante pruebas unitarias de MATLAB.
Creación de pruebas
Cuando crea una prueba, define entradas de prueba, señales de interés, tolerancias de aprobación/fallo de señales, iteraciones sobre valores paramétricos y evaluaciones para comportamiento de simulación. Puede crear vectores de entrada de prueba de varias maneras:
Gráficamente, con Signal Editor. Consulte Create and Edit Signal Data.
Desde conjuntos de datos, por ejemplo, utilizando archivos de Excel® o MAT.
Como secuencia de pasos de prueba que progresa según el tiempo o las condiciones lógicas.
Puede definir evaluaciones para indicar cuando los requisitos funcionales no se cumplen. Estas evaluaciones siguen los requisitos de diseño o el plan de pruebas. Puede definir evaluaciones de varias maneras:
Con un lenguaje de evaluación estructurado. El lenguaje estructurado ayuda a evaluar comportamiento complejo en lo que se refiere al tiempo, como dos eventos que deben producirse dentro de un marco de tiempo determinado. También ayuda a identificar conflictos entre requisitos.
Con instrucciones
verify
en un bloque Test Assessment o Test Sequence. Para obtener información sobre cómo configurar los bloques del modelo, consulte Verify Model Simulation by Using when Decomposition.Con bloques en la biblioteca de bloques Model Verification.
Con tolerancias establecidas en la salida de datos de simulación. Las tolerancias definen el valor delta aceptable de los datos de referencia u otra simulación.
Con un script personalizado de criterios creado con MATLAB.
Puede utilizar datos de prueba y modelos de prueba existentes con Simulink Test. Por ejemplo, si dispone de datos de pruebas de campo, puede probar el modelo o el código asignando los datos al caso de prueba. Si tiene modelos de prueba existentes que usen bloques Model Verification, puede organizar esas pruebas y gestionar los resultados en Test Manager.
Generación de pruebas
Con Simulink Design Verifier™, puede generar casos de prueba que cumplan objetivos de prueba o aumenten la cobertura del modelo o el código. Puede generar casos de prueba desde Test Manager o desde la interfaz de Simulink Design Verifier. De todos modos, puede incluir los casos de prueba generados en las pruebas originales o crear un archivo de prueba que alcance la cobertura completa. También puede enlazar los casos de prueba nuevos a requisitos adicionales.
Ejecución de pruebas
Puede controlar los modos de ejecución de pruebas desde Test Manager. Por ejemplo, puede:
Ejecutar pruebas en varias versiones de MATLAB. Las pruebas en varias versiones permiten aprovechar los datos de prueba recientes mientras ejecuta el modelo en su versión de producto.
Ejecutar pruebas consecutivas para verificar el código generado. Puede ejecutar la misma prueba en los modos dentro del modelo, SIL y PIL y comparar los resultados numéricos para demostrar la equivalencia entre el código y el modelo.
Ejecutar pruebas de HIL para verificar los sistemas que funcionan con hardware en tiempo real usando Simulink Real-Time e instrucciones
verify
en el modelo que ayudan a determinar si se cumplen los requisitos funcionales.Reducir el tiempo de prueba ejecutando pruebas en paralelo con Parallel Computing Toolbox™ o MATLAB Parallel Server™, o ejecutando un subconjunto filtrado del archivo de prueba completo.
Creación de informes
Cuando se crean informes de los resultados de las pruebas, puede establecer propiedades de informes que coincidan con los entornos de desarrollo. Por ejemplo, la creación de informes puede depender de si las pruebas se han superado o no, y los informes pueden incluir gráficas de datos, resultados de cobertura y requisitos enlazados a los casos de prueba. Puede crear y almacenar figuras personalizadas de MATLAB que se muestran con un informe. Las opciones de creación de informes permanecen en el archivo de prueba y se ejecutan cada vez que se ejecuta una prueba.
Una licencia de MATLAB Report Generator™ añade opciones de personalización adicionales:
Creación de informes a partir de una plantilla de Microsoft® Word o PDF.
Combinación de informes usando objetos personalizados que agregan resultados individuales.