Ouvrir le menu Fermer le menu

Qu’est-ce que le test unitaire ?

trait de séparation
Temps de lecture : 4 minutes

Les Tests Unitaires (TU), bonne pratique d’Assurance Qualité Logiciel, sont exigés dans de nombreuses normes de Sureté de Fonctionnement Logiciel comme la DO-178, l’IEC 61508, l’IEC 62304, l’ISO 26262, l’EN 50128.

En toute logique, les TU (comme les autres tests) ne doivraient pas être réalisés par les développeurs du code, afin de respecter l’indépendance d’analyse et de jugement.

Qu’est-ce que le test unitaire ?

Le test unitaire est un processus de vérification d’une unique unité de logiciel, elle-même définie comme étant la plus petite partie non divisible d’un code source. Par exemple, dans le cadre d’un développement en langage C, il est communément admis que l’unité de logiciel est une fonction de code. Ainsi, le test unitaire revient à tester une seule et unique fonction de code source à la fois, isolément des autres fonctions du projet.

Vos besoins_TU
Vos besoins_TU2
Générer un harnais de test à la main peut nécessiter un code source plus important que la fonction à tester…

Le but du test unitaire est de confronter une fonction de code aux exigences de conception correspondantes, et donc de s’assurer qu’elle fonctionne correctement en toutes circonstances.
Les tests unitaires jouent un rôle clé dans l’amélioration de la qualité des logiciels, en 
  • Détectant les erreurs rapidement (particulièrement lorsqu’ils sont effectués durant le développement), notamment dans le cadre de la méthode Test Driven Development),
  • Diminuant les erreurs en phase de maintenance (les tests unitaires faisant par la suite office de tests de non-régression),
  • Améliorant la documentation du code source (la lecture de tests unitaires étant souvent très instructive pour comprendre le fonctionnement d’une fonction de code).
Enfin, les tests unitaires, bonne pratique d’Assurance Qualité Logiciel, sont exigés dans de nombreuses normes de Sureté de Fonctionnement Logiciel comme la DO-178, l’IEC 61508, l’IEC 62304, l’ISO 26262, l’EN 50128, …

Cependant, la réalisation d’un test unitaire sans outil, ou au travers d’un environnement gratuit type xUnit, implique de développer le harnais de test, c’est-à-dire du code d’encapsulation de la fonction testée (déclaration et instanciation des variables, …), ainsi que de remplacer les éventuelles fonctions appelées par la fonction testée par des bouchons (« stub » en anglais). Ainsi, il est nécessaire de maintenir à jour un code de taille non négligeable uniquement dans un but de test, ce qui est rarement effectué en pratique…

Vous souhaitez réduire vos coûts de développement des logiciels critiques et les risques liés au calendrier tout en respectant les contraintes normatives ?

Nos outils et notre expertise permettent de réaliser des campagnes de tests unitaires, d’automatiser leur réexécution et d’assurer la conformité aux normes.

Discutez avec nos experts pour mettre en œuvre votre prochaine campagne de tests unitaires ?

3 raisons d'externaliser vos Tests Unitaires

5

Ces articles peuvent vous intéresser

image blog article

DO-178 : Répondre aux exigences de la norme de Sûreté de Fonctionnement Logiciel Avionique

Comment automatiser la réponse aux exigences logicielles de la norme avionique ?

image blog article

IEC 61508 : Répondre aux exigences de la norme de Sûreté de Fonctionnement Industriel

La norme IEC 61508 traite de la sûreté de fonctionnement des systèmes électriques, électroniques et électroniques programmables (comme l’électronique numérique et les logiciels) pour l’industrie. Régulièrement déclinée en normes spécifiques pour différents secteurs d’activité, elle est la référence en termes de safety.

image blog article

IEC 62304 : Répondre aux exigences de la norme de Logiciels de Dispositif Médical

La norme IEC 62304, parue en 2006 et amendée en 2015, traite du développement et de la maintenance des logiciels de dispositifs médicaux. Elle s’inspire de la norme industrielle de sûreté de fonctionnement IEC 61508.

image blog article

EN 50128 : Répondre aux exigences de la norme de Sûreté de Fonctionnement Logiciel Ferroviaire

Comment automatiser la réponse aux exigences logicielles ferroviaires ?

image blog article

ISO 26262 : Répondre aux exigences de la norme de Sûreté de Fonctionnement des Véhicules Automobiles

Découvrez quelques conseils qui vous permettront d'automatiser la réponse aux exigences logicielles de la norme ISO 26262 !

Vous cherchez
des solutions ?

Retrouvez des réponses à vos besoins les plus fréquents

En savoir plus