Qu'est-ce que le test d'application ?
⚡ Résumé intelligent
Les tests d'application valident un produit logiciel dans son intégralité plutôt qu'une seule unité, en couvrant l'interface, les fonctionnalités, la base de données et le comportement en charge. Cette page explique le cycle de vie en quatre étapes, les trois méthodologies de test, la planification des tests, les outils, les indicateurs et les bonnes pratiques spécifiques aux applications mobiles.
Qu'est-ce que le test d'application ?
Les tests d'applications sont définis comme un type de test de logiciel effectué via des scripts dans le but de détecter des erreurs dans le logiciel. Il traite des tests pour l’ensemble de l’application.
Il contribue à améliorer la qualité de vos applications tout en réduisant les coûts, en maximisant le retour sur investissement et en économisant du temps de développement.
En génie logiciel, les tests d'applications peuvent être effectués dans diverses catégories telles que l'interface graphique, les fonctionnalités, la base de données (backend), les tests de charge, etc.
Pour les tests d'applications, les cycles de vie des tests impliquent différentes phases, notamment l'analyse des exigences, la planification des tests, l'analyse des tests, la conception des tests, l'exécution des tests et le rapport de bogues, etc.
Ces phases se résolvent en un cycle de vie court et répétable que chaque application suit.
Comment tester une application ?
Les applications et produits logiciels présentent un certain nombre de variations en termes de fonctionnalités qu'ils prennent en charge ainsi que de processus qu'ils mettent en œuvre. Ainsi, les tests d’application garantissent qu’un programme ou une application particulier fonctionne correctement.
Un cycle de vie pour les tests d’applications comprend quatre étapes.
- Étape 1) Concevoir des plans de tests en fonction des exigences de l'application
- Étape 2) Développer des cas de tests manuels et des scripts de tests automatisés
- Étape 3) Exécuter des tests fonctionnels pour valider les exigences de l'application
- Étape 4) Exécuter des tests de charge et optimiser les performances des applications
Le type de tests exécutés dépend du type d’application testée. Les tests d’applications sont classés en 3 segments.
- Tests d'applications Web
- Tests d'applications de bureau
- Test d'application mobile
| Test d'applications | Types de tests exécutés |
|---|---|
|
|
|
|
|
|
Comparaison des tests d'applications Web, de bureau et mobiles
Ces trois segments partagent un cycle de vie similaire, mais diffèrent considérablement quant aux défaillances qu'ils subissent. Identifier les zones à risque permet de cibler les investissements en tests.
| Point de différence | Web | Bureau | Mobile |
|---|---|---|---|
| Fonctionne sur | Un navigateur sur un réseau | Une machine installée | Un téléphone portable ou une tablette |
| Variable principale | Navigateur et version | Operasystème et matériel de test | Appareil, version du système d'exploitation et taille de l'écran |
| Dépendance au réseau | toujours connecté | Souvent hors ligne | Intermittent, et doit survivre à la perte |
| Le plus grand risque | Rendu et chargement multiplateformes | Installation et compatibilité | Fragmentation entre les appareils |
| Gestion des interruptions | Rarement pertinent | Rarement pertinent | Appels, notifications et batterie faible |
| Chemin de mise à jour | Côté serveur, instantané pour tous | L'utilisateur installe un correctif | Examen de l'App Store, déploiement progressif |
Le mobile présente le plus grand nombre de variables incontrôlables, c'est pourquoi il est traité séparément plus loin sur cette page.
Méthodologies de tests d’applications
La méthodologie de test est la méthode structurée permettant de garantir qu'une application logicielle est testée de manière exhaustive. Une méthodologie de test désorganisée et inadéquate peut engendrer un produit instable.
Il existe trois manières d'effectuer les tests.
- Noir Box Tests
- Blanc Box Tests
- Gris Box Tests
Noir Box Tests
Noir Box Tests technique est couramment utilisée pour les tests Tests fonctionnels, Tests non fonctionnels, et les tests de régression. Dans les tests en boîte noire, les stratégies utilisées sont
- Tests de classe d'équivalence
- Test de valeur limite
- Table de décision
- Tableaux de transition d'état
Blanc Box Tests
Test de la boîte blanche Il est généralement utilisé pour tester le code logiciel afin de vérifier les failles de sécurité internes, les chemins d'accès défectueux ou mal structurés, le bon fonctionnement des boucles conditionnelles, etc. Dans les tests en boîte blanche, les stratégies utilisées sont les suivantes :
- Code Analyse de la couverture
- Couverture de chemin
Gris Box Tests
Cette technique de test est une combinaison de Black Box Des tests, ainsi que des tests en boîte blanche, sont effectués pour déterminer… Défauts basé sur une structure ou une utilisation d’application inappropriée.
Plan de test pour les tests d'applications
Le Plan de test Le document est dérivé du produit Description, la spécification des exigences logicielles SRS ou les documents de cas d'utilisation. L’objectif du test est de savoir quoi tester, comment tester, quand tester et qui testera. Le document du plan de test est utilisé comme support de communication entre l'équipe de test et les responsables de test.
Un plan de test standard pour les tests d'applications doit définir les fonctionnalités suivantes :
- Définir la portée des tests
- Définir l'objectif des tests
- Approche pour l’activité de test
- Calendrier des tests
- Punaise tracroi et reportage
Critères d'entrée et de sortie pour les tests d'application
Le plan de test préconise l'établissement de critères d'entrée et de sortie formels, mais il est important de les préciser. Sans cela, une phase de test risque soit de commencer avec une version instable, soit de se prolonger sans objectif final défini.
Les critères d'entrée Cette condition doit être remplie avant le début de l'exécution.
- Les exigences et le SRS sont examinés et validés.
- Le plan de test et les cas de test sont rédigés et approuvés.
- La version est déployée dans un environnement de test stable et réussit un test de non-régression.
- Les données de test et les comptes ou appareils requis sont disponibles.
- Un défaut tracL'outil King est configuré et l'équipe y a accès.
Critère de sortie démontrer que la phase a atteint son objectif.
- Tous les cas de test prévus sont exécutés et les résultats enregistrés.
- Aucun défaut critique ou de haute gravité ne reste ouvert.
- La couverture convenue par rapport aux exigences est atteinte.
- Les défauts mineurs restants sont documentés et acceptés par l'entreprise.
- Le rapport de synthèse des tests est validé.
Outils de test d'applications
Il existe différents outils de test pour les tests d'applications. La sélection des outils dépend du type de test que vous souhaitez effectuer. Pour différentes plates-formes, différents outils sont recommandés. Les outils de test d'applications garantissent les performances, la convivialité et la fonctionnalité des applications sur une variété d'appareils.
En voici quelques-uns.
- Selenium
- IBM Rational Functional Tester (RFT)
- LoadRunner (Maintenant OpenText LoadRunner (anciennement HP et Micro Focus)
- Apache JMeter
Remarque : IBM Rational Robot, longtemps commercialisé aux côtés de RFT, a été retiré du marché. Rational Functional Tester est actuellement le produit. IBM L'offre étant limitée, les nouveaux projets ne doivent pas être conçus autour de Robot.
Indicateurs clés pour les tests d'application
L'exécution des tests atteste de l'activité, mais pas de l'efficacité. Un petit nombre d'indicateurs permet de vérifier si les tests détectent effectivement des défauts et si l'application converge vers une qualité de version acceptable.
- Couverture de test: La proportion d'exigences ayant au moins un cas de test associé. Une faible couverture signifie des comportements non testés, quel que soit le taux de réussite.
- Densité des défauts : Le nombre de défauts est classé par ordre de grandeur, généralement par millier de lignes de code ou par module. Cela permet d'identifier les composants qui nécessitent une refonte plutôt que des tests supplémentaires.
- Défaut de fuite : Défauts détectés en production divisés par le nombre total de défauts constatés. Une augmentation des fuites est le signe le plus clair que les tests préalables à la mise en production sont insuffisants.
- Efficacité d'élimination des défauts : Pourcentage de défauts détectés avant la mise en production par rapport au total des défauts. Un taux supérieur à 90 % est un objectif courant.
- Taux d'exécution des tests : Des affaires sont intentées contre des affaires prévues, tracUn système de réglage par cycle permet de détecter les glissements dès le début, et non à la porte de sortie.
TracIl faut privilégier la tendance plutôt qu'une mesure isolée. Un cycle pris isolément est peu révélateur.
Test des meilleures pratiques pour les tests d'applications
Choisir la bonne stratégie pour les tests d’applications est un moyen garanti de détecter les défauts de l’application. Il devient donc extrêmement important que l’équipe d’assurance qualité suive un ensemble de processus standard pour détecter plus d’erreurs et en moins de temps.
Pour les tests d'applications, certaines des meilleures pratiques incluent
- Définir les spécifications fonctionnelles
- Revvues et inspections
- Critères formels d’entrée et de sortie
- Variations des tests fonctionnels
- Tests multiplateformes
- Exécution de tests automatisés
Défis des tests d’applications
Lors du test d'une application, un testeur peut rencontrer de nombreux défis.
- Problèmes identifiés uniquement lorsque l'utilisateur appelle
- Incapacité à anticiper l’impact du changement
- Aucune visibilité sur les erreurs applicatives et opérationnelles
- Long
Test d'application mobile
Comme les tests d'applications Web, Mobile Les tests d'applications reposent également sur la même stratégie et la même méthodologie. La différence peut résider dans les outils utilisés ; voici quelques outils couramment utilisés pour les tests d'applications mobiles : Appium, TestComplete, Robotium et Espresso.
Les types d'applications mobiles sont classés en trois sections.
- Application Web - Les utilisateurs y accèdent via un réseau comme Internet ou un intranet
- Application native - Elle est développée pour une plate-forme spécifique et installée sur un appareil informatique
- Application hybride : elle combine des éléments du Web et des applications natives, comme par exemple Facebook.
Pour la plupart des plateformes mobiles, vous pouvez utiliser de simples CSS, HTML, JS, etc.
Exemples de cas de test pour les tests d'applications mobiles
Une stratégie complète d'application de test mobile comprend une infrastructure d'appareils et de réseau, une sélection d'appareils cibles et une combinaison efficace d'outils de test manuels et automatisés pour couvrir à la fois tests non fonctionnels et fonctionnels.
Pour les applications mobiles, les éléments à tester sont
- Installation
- OTA
- Wi-Fi
- Câble de données
- Bluetooth
- Désinstallation
- Logo de l'application
- Splash
- Peu de mémoire
- Commentaires visuels
- Demande de sortie
- Démarrage/redémarrage de l'application
Défis des tests mobiles
Avec l'augmentation du nombre d'utilisateurs et d'appareils mobiles, tester une application mobile devient de plus en plus complexe. Tester une application mobile diffère considérablement de tester une application web pour ordinateur. Les défis courants rencontrés lors des tests mobiles sont :
- Couverture complète des tests
- Gestion de la fragmentation (différentes versions du système d'exploitation, processeur, mémoire)
- Absence de plan de test
- Pression temporelle
- Manque d'appareils physiques
- Diversité dans la plateforme et le système d'exploitation


