Activité : Implémenter un test de développeur
Objet
- Implémenter un ou plusieurs tests qui permettent de valider les composants logiciels via leur exécution physique.
- Développer des tests pouvant être exécutés en association avec d'autres tests dans le cadre d'une infrastructure de tests plus vaste
|
Rôle :
Implémenteur |
Fréquence : Généralement une fois par activité développant des éléments d'implémentation |
Etapes
|
Artefacts d'entrée :
|
Artefacts de sortie :
|
Guides d'utilisation de l'outil :
|
Plus d'informations :
|
Détails sur l'enchaînement d'activités :
|
Objet : |
Identifier le composant en test et définir un ensemble de tests à efficacité optimale pour l'itération en cours |
Dans un environnement formel, les composants et les tests devant être développés sont spécifiés dans l'artefact de conception de tests, ce qui rend cette étape facultative.
Dans d'autres situations, les tests encophore sont menés par des demandes de modification, des correctifs, des décisions d'implémentation qui doivent être validées, des tests de sous-systèmes n'utilisant que le modèle de conception comme entrée. Pour chacun de ces cas :
- définissez l'objectif : validation de l'interface sous-système/composant, validation de l'implémentation, reproduction d'un défaut
- définissez l'étendue : sous-système, composant, groupe de composants
- définissez le type et les détails du test : tests fonctionnels ou structurels, préconditions, postconditions, entrée/sortie et conditions d'exécution, points d'observation et de contrôle, actions de nettoyage
- déterminez le cycle de vie du test : par exemple, un test élaboré spécialement pour remédier à un défaut peut avoir une durée de vie très courte ; en revanche, un test destiné aux interfaces externes peut avoir le même cycle de vie que le composant testé
Objet : |
Déterminer la technique appropriée pour l'implémentation du test |
Il existe plusieurs techniques qui permettent d'implémenter un test, mais elles peuvent être considérées en termes de deux catégories générales : tests manuels et automatisés. Les tests encophores, pour la plupart, sont implémentés à l'aide de techniques de tests automatisés :
- tests programmés, soit à l'aide des mêmes techniques de programmation logicielle et d'environnement que le composant testé, soit à l'aide d'outils et de langages de programmation moins complexes (langages d'élaboration de scripts : tcl, utilisant le shell, etc.)
- tests enregistrés, élaborés à l'aide d'outils d'automatisation de tests qui capturent les interactions entre le composant testé et le reste du système, puis produisent les tests de base
- tests générés : certains aspects du test (liés à la procédure ou aux données du test) peuvent être automatiquement générés à l'aide d'outils plus complexes d'automatisation de tests
Bien que l'approche la plus populaire soit celle des tests programmés, dans certains cas (tests liés à l'interface graphique, par exemple), la méthode la plus efficace est la méthode manuelle (exécutée en suivant une séquence d'instructions capturées sous forme de description textuelle).
Objet : |
Implémenter les tests identifiés dans l'étape/activité de définition |
Implémentez tous les éléments définis au cours de la première étape. Détaillez clairement les préconditions liées à l'environnement de test et les étapes requises pour que le composant testé parvienne à l'état auquel les tests peuvent être exécutés. Identifiez les étapes de nettoyage à suivre pour restaurer l'état initial de l'environnement.
Soyez particulièrement vigilant quant à l'implémentation des points d'observation et de contrôle, car ces aspects peuvent nécessiter un support spécial à implémenter dans le composant testé.
Objet : |
Créer et mettre à jour des données stockées de façon externe au test et utilisées par le test au cours de l'exécution |
Dans la plupart des cas, la séparation entre les données de test et le test permet de bénéficier d'une solution plus facilement gérable. Si la durée de vie du test est très courte, le codage des données dans le test peut être plus efficace, mais si de nombreuses exécutions de test sont requises à l'aide de différents ensembles de données, le plus simple consiste à les stocker en externe.
D'autres avantages existent si les données de test sont séparées du test :
- plusieurs tests peuvent utiliser le même ensemble de tests
- simplicité de modification et/ou de multiplication
- possibilité d'utilisation pour le contrôle de la logique conditionnelle au sein du test
Objet : |
Vérifier le fonctionnement correct du test |
Testez le test. Vérifiez la configuration de l'environnement et les instructions de nettoyage. Exécutez le test, observez son comportement et effectuez la résolution des éventuels incidents. Si la durée de vie du test est longue, demandez à une personne moins experte de l'exécuter et de vérifier la présence d'une quantité suffisante d'informations de support. Effectuez une revue avec d'autres personnes de l'équipe de développement et avec d'autres parties intéressées.
Objet : |
Permettre un compte-rendu de l'analyse et de l'évaluation de l'impact sur les éléments tracés. |
Selon si le test est formel ou non, vous pouvez maintenir ou non des relations de traçabilité. Si c'est le cas, utilisez les exigences de traçabilité établies dans le plan de test pour mettre à jour les relations de traçabilité selon les besoins.
| |
|