Qu'est-ce que le test de composants ? Techniques, exemples de cas de test
โก Rรฉsumรฉ intelligent
Les tests de composants vรฉrifient chaque partie d'une application individuellement, sans l'intรฉgrer au reste, afin que les dรฉfauts soient dรฉtectรฉs et corrigรฉs au sein d'un seul module avant le dรฉbut de l'assemblage.
Qu'est-ce que le test de composants ?
Test de composants Il s'agit d'un type de test logiciel oรน les tests sont effectuรฉs sur chaque composant individuellement, sans l'intรฉgrer aux autres. D'un point de vue architectural, on l'appelle รฉgalementโฆ test de moduleet certaines rรฉfรฉrences l'appellent test de programme.
Tout logiciel est composรฉ de plusieurs composants, et les tests au niveau des composants consistent ร tester ces composants individuellement. C'est l'une des mรฉthodes les plus frรฉquentes. test de la boรฎte noire types de tรขches effectuรฉes par l'รฉquipe d'assurance qualitรฉ.
Il convient de faire une remarque dรจs le dรฉbut concernant la dรฉnomination. Le glossaire ISTQB traite des tests de composants et tests unitaires On utilise souvent les termes ยซ tests unitaires ยป et ยซ tests de composants ยป pour dรฉsigner le mรชme niveau de test. Dans la pratique, de nombreuses รฉquipes de dรฉveloppement, et cet article le confirment, font la distinction : les dรฉveloppeurs exรฉcutent les tests unitaires sur leur propre code, puis les testeurs exรฉcutent les tests de composants sur la version livrรฉe. Le tableau comparatif ร la fin de cet article illustre cette distinction.
Comme le montre le schรฉma ci-dessous, les tests de composants possรจdent leur propre stratรฉgie et leur propre plan de test, dans lesquels chaque partie du logiciel ou de l'application est considรฉrรฉe individuellement. Pour chaque composant, scรฉnario d'essai est dรฉfini, puis dรฉcomposรฉ en cas de test de haut niveau et enfin en cas de test dรฉtaillรฉs de bas niveau. cas de test avec prรฉrequis.
Lโusage du terme ยซ tests de composants ยป varie selon les domaines et les organisations. Les trois raisons les plus courantes de cette diffรฉrence de perception sont prรฉsentรฉes ci-dessous.
- Le type de modรจle de cycle de vie de dรฉveloppement choisi
- La complexitรฉ du logiciel ou de l'application testรฉe
- Que les tests soient effectuรฉs avec ou sans isolation des autres composants de l'application
Le cycle de vie des tests logiciels gรฉnรจre de nombreux artefacts de test, c'est-ร -dire les documents crรฉรฉs et utilisรฉs lors des activitรฉs de test. Parmi eux figurent la politique et la stratรฉgie de test, qui dรฉfinissent les types de tests utilisรฉs et leur niveau de dรฉtail dans un projet donnรฉ.
Qui effectue les tests de composants
Les tests de composants sont effectuรฉs par les testeurs. Les tests unitaires sont rรฉalisรฉs par les dรฉveloppeurs, qui testent une fonction ou une procรฉdure individuelle. Une fois les tests unitaires terminรฉs, les tests de composants sont effectuรฉs et pris en charge par les testeurs.
Quand effectuer des tests de composants
Les tests de composants sont effectuรฉs peu aprรจs les tests unitaires rรฉalisรฉs par les dรฉveloppeurs et la mise ร disposition de la version de dรฉveloppement ร l'รฉquipe de test. Cette version est appelรฉe version de test unitaire (UT). Les principales fonctionnalitรฉs de chaque composant sont testรฉes lors de cette phase.
Critรจres d'entrรฉe pour les tests de composants
- L'ensemble minimal de composants ร inclure dans la version UT a รฉtรฉ dรฉveloppรฉ et testรฉ unitairement.
Critรจres de sortie pour les tests de composants
- Chaque composant fonctionne comme prรฉvu.
- Aucun dรฉfaut critique, de gravitรฉ รฉlevรฉe ou moyenne, ni aucun dรฉfaut prioritaire ne reste ouvert dans le journal des dรฉfauts.
Techniques de test des composants
En fonction du niveau de profondeur des tests, les tests de composants sont catรฉgorisรฉs de deux maniรจres.
- CTIS โ Tests de composants en petit
- CTIL โ Tests de composants ร grande รฉchelle
CTIS โ Tests de composants en petit
Les tests de composants peuvent รชtre effectuรฉs avec ou sans isolation des autres composants de l'application testรฉe. Lorsqu'ils sont rรฉalisรฉs avec les autres composants isolรฉs, on parle de tests de composants ร petite รฉchelle.
Exemple 1: Sur un site web comportant cinq pages diffรฉrentes, tester chaque page sรฉparรฉment et indรฉpendamment des autres composants constitue un test de composants ร petite รฉchelle.
Exemple 2: La page d'accueil de guru99.com, prรฉsentรฉe ci-dessous, comporte de nombreuses sections, telles que Accueil, Tests, SAPWeb, ร apprendre absolument !, Big Data, Projets en direct et Blog.
Tout logiciel est composรฉ de nombreux composants, et chaque composant possรจde ses propres sous-composants. Tester sรฉparรฉment chaque module listรฉ dans l'exemple 2, sans tenir compte de son intรฉgration avec les autres composants, revient ร effectuer des tests de composants ร petite รฉchelle.
L'ouverture du menu dรฉroulant Tests rรฉvรจle les sous-composants du composant Tests : Test manuel, SOAPUI, QTP, JUnit, Selenium, Gestion des tests et Test mobile. Sur la capture d'รฉcran ci-dessous, ces sous-composants sont mis en รฉvidence en rouge.
CTIL โ Tests de composants ร grande รฉchelle
Les tests de composants effectuรฉs sans isolation des autres composants de l'application testรฉe sont appelรฉs tests de composants ร grande รฉchelle.
Un exemple permet de mieux comprendre la diffรฉrence. Supposons qu'une application soit composรฉe de trois composants : le composant A, le composant B et le composant C.
Le dรฉveloppeur a crรฉรฉ le composant B et souhaite le faire tester. Pour tester complรจtement le composant B, certaines de ses fonctionnalitรฉs dรฉpendent du composant A et d'autres du composant C, comme l'illustre le schรฉma ci-dessous.
Le flux de fonctionnalitรฉs est A โ B โ C, ce qui signifie que le composant B dรฉpend ร la fois de A et de C. Dans ce flux, le stub est la fonction appelรฉe et le pilote est la fonction appelante.
Les composants A et C n'ont pas encore รฉtรฉ dรฉveloppรฉs. Pour tester complรจtement le composant B, A et C sont remplacรฉs, selon les besoins, par un pilote et un stub ; les deux รฉlรฉments manquants servent donc d'objets factices en attendant la crรฉation des composants dรฉfinitifs.
- Bout: Un stub est appelรฉ par le composant testรฉ. Le composant C n'รฉtant pas prรชt, un stub le remplace et renvoie les rรฉponses attendues par B.
- Driver: Un pilote appelle le composant testรฉ. Le composant A n'รฉtant pas prรชt, un autre pilote le remplace et invoque le composant B avec les entrรฉes requises.
Exemples de cas de test pour les tests de composants
Les deux pages web ci-dessous sont liรฉes fonctionnellement, ce qui en fait une paire de composants utiles ร tester.
La page Web 1 est la page de connexion du site bancaire de dรฉmonstration.
Lorsque l'utilisateur saisit un identifiant et un mot de passe valides et clique sur le bouton ยซ Soumettre ยป, la page redirige vers la page d'accueil du site web de dรฉmonstration de la banque, illustrรฉe ci-aprรจs.
Ici, la page de connexion est un composant et la page d'accueil en est un autre. Tester la fonctionnalitรฉ de chaque page sรฉparรฉment constitue un test de composant.
Scรฉnarios de test des composants sur la page web 1 :
- Saisissez un identifiant utilisateur invalide et vรฉrifiez qu'un avertissement convivial est affichรฉ ร l'utilisateur final.
- Saisissez un identifiant et un mot de passe invalides, cliquez sur Rรฉinitialiser, puis vรฉrifiez que les champs identifiant et mot de passe sont effacรฉs.
- Saisissez un nom d'utilisateur et un mot de passe valides, puis cliquez sur le bouton ยซ Se connecter ยป.
Scรฉnarios de test des composants sur la page web 2 :
- Vรฉrifiez que le message de bienvenue de la page de gestion s'affiche bien sur la page d'accueil.
- Vรฉrifiez que tous les liens situรฉs ร gauche de la page Web sont cliquables.
- Vรฉrifiez que l'identifiant du responsable est affichรฉ au centre de la page d'accueil.
- Vรฉrifiez la prรฉsence des trois images diffรฉrentes sur la page d'accueil, conformรฉment au schรฉma.
Tests unitaires et tests de composants
Le tableau ci-dessous rรฉsume les diffรฉrences entre les deux niveaux dans la pratique quotidienne.
| Tests unitaires | Test des composants |
| Tester les programmes et modules individuels pour dรฉmontrer que le programme s'exรฉcute conformรฉment aux spรฉcifications. | Tester chaque objet ou partie du logiciel sรฉparรฉment, avec ou sans isolation des autres objets. |
| Validรฉ par rapport aux documents de conception. | Validรฉ par rapport aux exigences de test et aux cas d'utilisation. |
| Rรฉalisรฉ par les dรฉveloppeurs. | Rรฉalisรฉ par des testeurs. |
| Fait en premier. | ร faire une fois les tests unitaires terminรฉs cรดtรฉ dรฉveloppeurs. |
| Les dรฉfauts sont gรฉnรฉralement rรฉparรฉs sur place et ne sont pas consignรฉs officiellement. | Les dรฉfauts sont enregistrรฉs et tracguidรฉ tout au long du processus de gestion des dรฉfauts. |






