BTC TestStack

Test de migration

Assurez-vous que les nouvelles versions d’outils n’introduisent pas de changements involontaires dans le comportement de votre logiciel.

Le problème

Mettre à niveau votre chaîne d’outils est une opération courante. Prouver qu’aucun changement n’est passé inaperçu ne l’est pas.

Dans un processus de développement basé sur des modèles, le choix des outils et de leurs versions — pour la modélisation, la génération de code et même la compilation — peut influer sur le comportement du logiciel. Le code généré présente souvent des différences après la mise à niveau du générateur de code. Comment vérifier alors que le logiciel se comporte toujours exactement comme avant ? C’est le rôle du test de migration.

Définition

Un test back-to-back, exécuté une fois dans chaque environnement.

Le test de migration applique le même mécanisme de test back-to-back que la régression logicielle. Toutefois, au lieu de comparer deux versions d’un modèle sur une même machine, il compare un modèle dans au moins deux environnements correspondant à différentes versions d’outils : l’ancienne configuration MATLAB/TargetLink ou du compilateur sert de référence, tandis que la configuration mise à niveau sert de comparaison. BTC TestStack y associe la génération automatisée de vecteurs de stimuli afin d’atteindre une exhaustivité de 100 % avec 0 % d’effort manuel.

Fonctionnement

Un même flux de travail, réparti entre vos environnements.

L’exécution des tests peut être automatisée au moyen d’un script, mais un test de migration complet pose aussi des difficultés liées aux environnements, notamment la mise en place côte à côte de conteneurs ou de machines virtuelles dotés de différentes versions des outils. C’est précisément dans ce contexte que les outils CI/CD tels que Jenkins prennent tout leur sens.

01

Répartition des environnements

Les agents Jenkins exécutent chacun une configuration logicielle requise (différentes versions de MATLAB/TargetLink, différents compilateurs et même un système d’exploitation différent), de sorte que chaque environnement testé est disponible en parallèle.

02

Transfert de données automatisé

Le plugin BTC TestStack pour Jenkins transfère les données entre les environnements en arrière-plan. Indiquez les fichiers du modèle ; BTC TestStack et Jenkins se chargent du reste.

03

Vue d’ensemble, puis analyse détaillée

Un rapport récapitulatif présente en un coup d’œil les résultats obtenus dans chaque environnement et permet d’examiner, pour chaque écart détecté, les détails au niveau des sous-systèmes ou des signaux.

Certifié

BTC TestStack

est certifié ISO 26262

Le certificat porte sur des normes de sécurité fonctionnelle dans plusieurs secteurs :

ISO 26262
Automobile
IEC 61508-3:2010
Sécurité fonctionnelle industrielle / intersectorielle
ISO 25119
Machines agricoles et forestières
IEC 62304
Logiciel pour dispositifs médicaux
EN 50716
Applications ferroviaires

Pour ISO 26262, BTC TestStack est certifié selon le niveau de confiance dans l’outil (TCL) le plus élevé, valable pour tous les niveaux ASIL, y compris ASIL D. Sur demande, nous fournissons gratuitement le certificat et le rapport aux clients, ce qui supprime l’essentiel de leur effort de qualification des outils.

Feel the Quality

Échangez avec notre équipe d’ingénierie.

Expliquez-nous où se situe réellement votre difficulté d’ingénierie. Nous vous indiquerons si la prochaine étape la plus pertinente est une licence d’évaluation, un atelier ou un échange.