Le test logiciel, ou software test, désigne l’ensemble des opérations visant à vérifier le fonctionnement d’un programme informatique selon des critères définis. Ce guide expose les principes, usages autorisés, restrictions, processus de validation humaine et modalités de déploiement du test logiciel en entreprise, en se fondant exclusivement sur la source fermée.
Périmètre de la charte de test logiciel
Définition du périmètre
Le périmètre de la charte de test logiciel précise les éléments du logiciel concernés par les activités de test. Tester un logiciel implique de délimiter les modules, fonctionnalités ou interfaces qui feront l’objet d’une vérification. Cette délimitation s’effectue en fonction des objectifs du projet, des ressources disponibles et des contraintes techniques. Les composants exclus du périmètre sont listés explicitement afin d’éviter toute ambiguïté lors de la réalisation des software test.
La charte peut également spécifier les environnements dans lesquels les tests seront réalisés, comme les plateformes matérielles, les systèmes d’exploitation ou les configurations réseau. Exemple hypothétique : une équipe décide de limiter les tests à la version desktop d’une application, en excluant la version mobile du périmètre.
Objectifs du test logiciel
Les objectifs du test logiciel sont définis pour orienter les actions de vérification et de validation. Ils peuvent porter sur la détection d’anomalies, la vérification de la conformité aux spécifications ou l’évaluation du comportement du logiciel dans des conditions particulières. La charte précise les attentes vis-à-vis des résultats de test, sans garantir l’absence de défauts.
- Identifier les modules à tester et ceux à exclure.
- Déterminer les types de tests à réaliser (fonctionnels, d’intégration, de non-régression, etc.).
- Fixer les critères d’acceptation des résultats.
La charte de test logiciel sert ainsi de référence pour toutes les parties prenantes impliquées dans le processus de software test, en posant un cadre partagé sur ce qui sera examiné et selon quelles modalités.
Usages autorisés du test logiciel
Conditions d’utilisation
Tester un logiciel est autorisé dans le cadre d’une utilisation conforme aux droits accordés par le titulaire de la licence. L’utilisateur doit respecter les limites fixées par le contrat de licence, notamment en ce qui concerne l’accès, la reproduction et la modification du logiciel. Toute opération de software test doit s’effectuer sans porter atteinte aux droits d’auteur ou aux mesures techniques de protection mises en place par l’éditeur.
Le test logiciel peut être réalisé pour vérifier le bon fonctionnement du programme, détecter des erreurs ou évaluer la compatibilité avec d’autres systèmes, à condition que ces actions n’impliquent pas de décompilation, de rétro-ingénierie ou d’extraction de code, sauf si la licence le permet explicitement. L’utilisation d’outils automatisés pour tester un logiciel doit également rester dans le périmètre autorisé par le contrat.
Exemple hypothétique d’usage conforme
Exemple hypothétique : un utilisateur installe un logiciel sur son poste conformément à la licence. Il procède à des tests fonctionnels en utilisant les interfaces prévues par le programme, sans tenter d’accéder au code source ni de contourner les dispositifs de sécurité. Les résultats des tests sont utilisés uniquement pour améliorer l’intégration du logiciel dans son environnement de travail, sans diffusion à des tiers non autorisés.
Données et usages interdits lors du software test
Restrictions sur les données
Lorsqu’il s’agit de tester un logiciel, certaines catégories de données ne doivent pas être utilisées. Les données réelles permettant d’identifier directement ou indirectement une personne physique sont exclues des jeux de tests, sauf exception prévue par le cadre interne. Les données sensibles, telles que celles relatives à la santé, à l’origine raciale ou ethnique, aux opinions politiques, aux convictions religieuses ou philosophiques, à l’appartenance syndicale, à la vie sexuelle ou à l’orientation sexuelle, sont interdites dans les environnements de software test.
Il est également interdit d’utiliser des données issues d’incidents de sécurité, de procédures disciplinaires ou de dossiers individuels pour alimenter les scénarios de test. Les jeux de données doivent être créés spécifiquement pour le test, en évitant toute reprise de données issues de la production, même partiellement pseudonymisées.
Exemple hypothétique d’usage interdit
Exemple hypothétique : une équipe souhaite tester un logiciel de gestion des ressources humaines. Pour accélérer la phase de test, elle importe un extrait de la base de production contenant des noms, adresses, numéros de sécurité sociale et informations sur les arrêts maladie. Cette pratique expose des données personnelles et sensibles à des risques non maîtrisés et contrevient aux restrictions applicables lors du software test.
Pour éviter ces usages interdits, il convient de générer des données fictives ou d’utiliser des outils de création de jeux de données anonymisées, sans aucun lien avec des personnes réelles ou des situations existantes.
Validation humaine et signalement dans le processus de test
Rôle de la validation humaine
Lorsqu’il s’agit de tester un logiciel, la validation humaine intervient pour compléter les vérifications automatisées. Cette étape consiste à faire intervenir une ou plusieurs personnes qui examinent les résultats des tests, identifient les comportements inattendus et évaluent la pertinence des réponses du logiciel dans des situations variées. La validation humaine permet de détecter des anomalies qui pourraient échapper aux outils automatiques, notamment dans les cas où l’interprétation contextuelle ou la compréhension fine des attentes de l’utilisateur sont nécessaires.
Exemple hypothétique : lors d’un software test, un testeur humain remarque que l’interface affiche un message ambigu après une action, alors que les tests automatisés n’ont signalé aucune erreur technique. Ce retour humain permet d’ajuster le logiciel pour améliorer la clarté des messages affichés.
Procédure de signalement
Le signalement des anomalies ou des écarts observés pendant le processus de test suit une procédure définie. Chaque observation doit être consignée dans un rapport, en précisant le contexte, les étapes ayant mené à l’anomalie, et les résultats attendus par rapport aux résultats obtenus. Ce rapport est ensuite transmis à l’équipe en charge du développement ou de la maintenance du logiciel.
- Décrire précisément l’anomalie ou le comportement inattendu.
- Indiquer les conditions de reproduction du problème.
- Joindre, si possible, des captures d’écran ou des journaux d’exécution.
- Classer le signalement selon sa gravité ou son impact sur l’utilisation du logiciel.
Cette méthode structurée facilite le suivi des corrections et l’amélioration continue lors des cycles de software test.
Déploiement, contrôle et révision du test logiciel
Modalités de déploiement
Le déploiement d’un test logiciel s’effectue selon un plan défini à l’avance, qui précise les environnements concernés, les outils utilisés et les étapes de mise en œuvre. Il est recommandé de préparer un environnement de test distinct de la production afin d’éviter toute interférence avec les opérations courantes. Les jeux de données utilisés lors du software test doivent être adaptés à chaque scénario, en tenant compte des contraintes de confidentialité et de pertinence fonctionnelle.
Exemple hypothétique : une équipe choisit de déployer une nouvelle version d’un logiciel sur un serveur dédié au test, en y important des données fictives pour simuler des cas d’utilisation variés. Ce déploiement progressif permet d’observer le comportement du logiciel sans impacter les utilisateurs réels.
Contrôle et révision périodique
Le contrôle du test logiciel repose sur la vérification régulière des résultats obtenus par rapport aux objectifs fixés. Il s’agit d’analyser les écarts, d’identifier les causes d’échec et de documenter les observations. Une grille de suivi peut être utilisée pour consigner les incidents détectés, les actions correctives engagées et les évolutions apportées au logiciel.
- Planifier des points de contrôle à chaque étape du software test.
- Mettre à jour la documentation à chaque modification du périmètre testé.
- Organiser des revues périodiques pour ajuster les méthodes de test et intégrer les retours d’expérience.
La révision périodique du processus de test logiciel permet d’adapter les pratiques aux évolutions du logiciel et de ses usages. Elle inclut l’analyse des résultats passés, la mise à jour des scénarios de test et la réévaluation des outils employés.
Questions fréquentes
Quelles données peuvent être utilisées lors d’un test logiciel ?
Seules les données explicitement autorisées par la charte interne peuvent être utilisées lors d’un test logiciel. L’utilisation de données réelles ou sensibles est interdite, sauf mention contraire dans la source fermée.
Comment signaler un usage non conforme lors d’un software test ?
La procédure de signalement prévoit une notification auprès du référent désigné. Toute suspicion d’usage non conforme doit être documentée et transmise selon les modalités prévues par la charte.
Une validation humaine est-elle requise pour tous les tests logiciels ?
La validation humaine est requise pour les étapes définies dans la charte. Elle permet de vérifier la conformité des opérations de test avec les règles internes, sans se substituer à une validation automatisée.
Existe-t-il une obligation de révision périodique des pratiques de test logiciel ?
La charte prévoit une révision périodique des pratiques de test logiciel. Cette révision vise à adapter les procédures aux évolutions internes, sans référence à une obligation générale extérieure.
