Software Quality Intelligence™
Outil · Analyse de couverture de test

Testwell CTC++

Develop. Test. Cover.

L'analyseur de couverture de code pour C et C++ (Java en module complémentaire) : des tests réellement mesurés, du niveau fonction jusqu'au MC/DC, aussi bien sur poste de développement que sur cible embarquée.

Langages

Conçu pour C et C++

Testwell CTC++ prend en charge le C et le C++, et suit leurs standards en constante évolution. Un module complémentaire couvre le langage Java.

Développement critique

Certifié pour la sécurité fonctionnelle

Quand des vies sont en jeu, les normes de sécurité — ISO 26262 dans l'automobile, DO-178C dans l'aéronautique — imposent la mesure de la couverture, jusqu'au niveau MC/DC le plus exigeant. Plusieurs centaines d'entreprises utilisent Testwell CTC++ précisément dans ce cadre.

Testwell CTC++ est certifié par TÜV Süd pour la sécurité fonctionnelle. Un Safety Package accompagne la qualification de l'outil dans votre contexte.

  • IEC 61508 — sécurité fonctionnelle des systèmes E/E/PE
  • ISO 26262 — automobile
  • EN 50716 — ferroviaire
  • ISO 25119 — machines agricoles
  • IEC 62304 — dispositifs médicaux
Niveaux de couverture

De la fonction au MC/DC

Testwell CTC++ fournit toutes les mesures exigées par les différentes normes de sûreté, et met en évidence visuellement les lignes exécutées, non exécutées et partiellement exécutées.

Function Coverage

Chaque fonction a-t-elle été appelée ?

Statement Coverage

Chaque instruction a-t-elle été exécutée ?

Decision / Branch

Chaque branche (vrai / faux) a-t-elle été empruntée ?

Condition Coverage

Chaque condition a-t-elle été évaluée dans les deux sens ?

MC/DC

Modified Condition / Decision Coverage — l'exigence la plus élevée des normes de sûreté.

Multicondition

Toutes les combinaisons de conditions d'une décision.

Logiciel embarqué

Pensé pour les contraintes de la cible

Mesurer la couverture sur cible embarquée pose des défis spécifiques. Testwell CTC++ y répond point par point.

Le défiLa réponse de Testwell CTC++
Mémoire réduiteInstrumentation intrinsèquement légère, réductible selon le flux de travail — jusqu'à une mesure bit à bit lisible via le débogueur.
Remontée des donnéesN'importe quelle interface de communication cible ↔ hôte peut être utilisée. La bibliothèque d'exécution, fournie en C, s'adapte aux capacités de la cible.
Cross-compilationIndépendant du compilateur, configurable pour tout compilateur C/C++. De nombreuses configurations sont fournies, avec assistance pour les nouveaux compilateurs.
Démonstration

Testwell CTC++ en action

Une démonstration de la mesure de couverture avec Testwell CTC++.

Regarder sur YouTube ↗

Application & systèmes

Windows, Linux, macOS

La mesure de couverture pour les applications de bureau est simple et directe : augmentation légère du temps de build, bibliothèques fournies pour l'écriture des données, et rapports performants qui passent à l'échelle.

Les composants s'exécutant en mode noyau sont traités comme des cibles embarquées, avec une bibliothèque d'exécution ajustable.

Intégration

Dans presque toute chaîne CI

Collection d'outils en ligne de commande, Testwell CTC++ s'automatise à tout niveau : serveurs de build et solutions d'intégration continue, postes des développeurs, en mode centralisé ou distribué selon les étapes instrumentation → test → reporting.

L'instrumentation s'insère souvent dans le build sans configuration supplémentaire. Des intégrations existent pour Visual Studio et IAR Embedded Workbench, et pour bien d'autres IDE via configuration.

Les tests

Tous vos tests, tels quels

Tests unitaires, d'intégration ou système : tous peuvent être menés comme d'habitude, en mode automatisé, partiellement automatisé ou manuel. Le programme instrumenté écrit les données pendant l'exécution — un transfert entièrement personnalisable sur cible.

Toutes les séries de tests d'un projet se combinent en un rapport unique. L'outil fonctionne avec les plates-formes et frameworks de test courants.

Rapports & justifications

Clairs, et honnêtes

Le rapport HTML offre vues d'ensemble et détail dans le code source, avec des niveaux configurables. Les rapports étant basés sur des modèles, tous les formats textuels (XML, CSV, JSON) sont pris en charge — de quoi alimenter facilement un tableau de bord tiers.

La couverture manquante est expliquée et documentée via des justifications, dont l'impact est visible sur toutes les mesures : on sait clairement si 100 % du code a été testé, ou au moins justifié.

Retours d'utilisateurs

Ce que les équipes en retiennent

Des milliers d'utilisateurs dans le monde s'appuient sur Testwell CTC++. Les points qui reviennent le plus souvent :

Intégration sans friction

Prise en main rapide, y compris sur cible embarquée, sans blocage côté compilateurs, IDE ou débogueurs.

Rapports lisibles

Des rapports clairs qui montrent précisément quelles conditions ont été testées, et lesquelles ne l'ont pas été.

Support à l'écoute

Documentation complète et accompagnement pour l'installation, la configuration et la mesure de couverture.

Fiche technique

Spécifications & intégrations

L'essentiel à connaître pour évaluer l'outil dans votre environnement.

Spécifications techniques

  • Langages : C et C++ en natif ; add-ons pour Java et C#.
  • Compilateurs : tous les compilateurs et cross-compilateurs. Un compilateur non listé est adapté rapidement et sans frais.
  • Cibles : hôte et toute cible embarquée, y compris très contrainte (peu de RAM/ROM, sans système de fichiers).
  • Instrumentation : au niveau du source, sur une copie temporaire — votre code d'origine n'est pas modifié.
  • Rapports : formats HTML, XML, CSV, JSON (via gabarits), exploitables par des tableaux de bord tiers.
  • Au-delà de la couverture : mesure des temps d'exécution (analyse des goulots / pire cas).
  • Qualification : kits de qualification disponibles pour les principales normes de sûreté.

Intégrations & environnements

  • Intégration continue : pilotable en ligne de commande — Jenkins et chaînes de build automatisées.
  • Qualité : alimentation de tableaux de bord type TiCS ou SonarQube.
  • IDE : Visual Studio, IAR Embedded Workbench, Eclipse, Code::Blocks, Microchip MPLAB, Keil MDK-ARM…
  • Modèle & AUTOSAR : MATLAB/Simulink, dSPACE TargetLink & SystemDesk, AUTOSAR Builder.
  • Debug / trace & test : Lauterbach, PikeTec TPT, QTronic TestWeaver/Silver.
  • Tests : compatible avec tous les frameworks de tests unitaires.

Voir aussi la couverture normative et la fiche produit Verifysoft ↗.

Essayez Testwell CTC++ sur votre code

Un essai gratuit pour mesurer, concrètement, ce que vos tests couvrent vraiment — ou parlons d'abord de votre besoin.

Essai gratuit