portability testing guide with practical examples
Introduction aux tests de portabilité:
Le test de portabilité est une méthodologie de test non fonctionnelle qui détermine la facilité ou la difficulté avec laquelle un composant logiciel ou une application peut être déplacé d'un environnement à un autre.
Les résultats des tests obtenus à partir des tests de portabilité permettent de déterminer avec quelle facilité un composant logiciel d'un environnement peut être utilisé dans un autre environnement.
Le terme «environnement» fait référence au passage d’un système d’exploitation à un autre, d’un navigateur à un autre ou d’une version de base de données à une autre version de base de données.
qu'est-ce que les tests alpha et bêta
Une règle empirique majeure du test de portabilité est qu'il ne doit être utilisé que si le composant logiciel doit être déplacé d'un environnement à un autre.
Une mesure de la portabilité est l'effort requis pour déplacer le composant logiciel d'un environnement à un autre. Une unité de mesure de la portabilité est le coût d'adoption d'un logiciel dans le nouvel environnement par rapport au coût de redéveloppement du logiciel.
Ce didacticiel vous donne un aperçu complet de la signification, des objectifs, des attributs, de la liste de contrôle, des avantages et des inconvénients des tests de portabilité ainsi que quelques exemples pratiques en termes simples pour votre compréhension facile.
Ce que vous apprendrez:
- Différence entre les tests de portabilité et de compatibilité
- Objectifs
- Les attributs
- Liste de contrôle des tests de portabilité
- Avantages et inconvénients
- Exemples de tests de portabilité
- Conclusion
- lecture recommandée
Différence entre les tests de portabilité et de compatibilité
Les points ci-dessous distingueront brièvement les différences entre la portabilité et la compatibilité.
=> La compatibilité concerne si deux composants ou plus peuvent être exécutés dans le même environnement en même temps sans nuire au comportement l'un de l'autre.
Exemple: Un traitement de texte et une calculatrice fonctionnant sur le même système d'exploitation tel que Windows 10 peuvent être considérés comme compatibles l'un avec l'autre car l'exécution d'une application n'affectera pas le comportement de l'autre application.
=> La portabilité consiste à déplacer le composant d'un environnement à un autre.
Exemple: Un jeu fonctionnant sous Windows XP est dit portable si le même jeu peut être exécuté sous Windows 7 sans aucun changement dans le comportement du jeu.
=> En bref, les tests de portabilité concernent les composants logiciels dans plusieurs environnements, tandis que les tests de compatibilité concernent le test de deux applications différentes dans le même environnement.
Objectifs
Voici les objectifs de ce test:
- Déterminez si un système peut être porté sur chacune des caractéristiques environnementales, telles que la vitesse du processeur, l'espace disque et la RAM, la résolution du moniteur, les versions du système d'exploitation et du navigateur.
- Déterminez si l'aspect et la convivialité de l'application en ce qui concerne l'interface utilisateur et les fonctionnalités fonctionnelles sont similaires à ceux de plusieurs systèmes d'exploitation et de plusieurs navigateurs.
- Ces tests aident à déterminer si le système peut être prêt à être publié, en particulier lorsqu'il est établi que les clients du produit utiliseront plusieurs systèmes d'exploitation avec plusieurs versions de navigateur.
- Ces tests sont généralement effectués par rapport à un ensemble prédéfini d'exigences de portabilité, qui aident à trouver les défauts manqués dans le cadre des tests unitaires et d'intégration de l'application.
- Les défauts détectés lors de ces tests doivent être corrigés et livrés dans le cadre de la sortie du produit par les développeurs.
- Ces tests sont généralement effectués de manière incrémentielle tout au long du cycle de vie du développement logiciel.
Les attributs
La carte de test logiciel a défini certains attributs majeurs de ces tests.
java code entretien questions et réponses
Elles sont:
- Installabilité
- Adaptabilité
- Remplaçabilité
- Compatibilité ou coexistence
# 1) Installabilité:
L'installabilité est effectuée sur un logiciel qui doit être installé dans un environnement cible.
Les caractéristiques suivantes sont validées dans le cadre des tests d’installabilité:
- Exigences du système d'exploitation pour l'installation.
- Configuration requise du navigateur pour l'utilisation d'une application.
- Exigences de mémoire ou de RAM.
- Procédure d'installation.
- Procédure de désinstallation.
- Exceptions d'interruption d'installation.
- Conditions préalables à l'installation du logiciel.
# 2) Adaptabilité:
Les tests d'adaptabilité sont le processus de validation de l'adaptabilité du système à chacun des environnements cibles. L'utilisation de normes de communication communes entre plusieurs systèmes peut aider à améliorer l'adaptabilité du système dans son ensemble.
Les tests d'adaptabilité comprennent les caractéristiques suivantes:
- Dépendance matérielle.
- Dépendance logicielle.
- Langue standard.
- Communication du système avec chacun des environnements cibles.
- Encapsulation des dépendances.
- Représentation des dépendances sur plusieurs systèmes.
# 3) Remplaçabilité:
La remplaçabilité est la capacité de remplacer un composant logiciel par un autre. Le composant qui remplace le composant précédent doit produire les mêmes résultats que le composant précédent sur tous les environnements cibles. Idéalement, il devrait avoir le même objectif que le composant qui est remplacé.
Les produits concurrents du même domaine seront les candidats idéaux pour la remplaçabilité, car le produit qui est remplacé peut être beaucoup moins cher que le produit existant d'un concurrent.
# 4) Compatibilité ou coexistence:
La compatibilité est la capacité de deux ou plusieurs composants à celui existant dans le même environnement sans nuire au comportement de l'autre. Ce test est particulièrement utile dans les grands systèmes qui incluent plusieurs sous-systèmes.
Les sous-systèmes partagent idéalement une zone de pile et une mémoire communes. En conséquence, une exception survenue sur un sous-système peut facilement se propager à l'autre sous-système, provoquant le blocage de l'ensemble de l'application.
Changer le composant existant, passer à un nouveau composant, adapter une nouvelle interface au composant existant sont tous les problèmes auxquels les systèmes logiciels sont confrontés au fil du temps.
Les composants qui échouent test de compatibilité Les exigences ont un effet profond sur l'ensemble du système et, par conséquent, chaque composant doit être testé de manière approfondie pour son effet sur les ressources communes.
Peu d'autres sur la liste:
Outre ces attributs majeurs, les tests de portabilité peuvent également inclure plusieurs autres attributs tels que les tests d'interopérabilité et les tests de localisation.
quel est le meilleur changeur de voix
(i) Interopérabilité: Les tests d'interopérabilité permettent de déterminer si deux composants ou plus peuvent interagir entre eux sans aucun problème de communication.
Par exemple , le transfert de données via Bluetooth entre un PC Windows 10 et un smartphone basé sur Android peut être utilisé pour des tests d'interopérabilité.
(ii) Localisation: Des tests de localisation sont effectués pour s'assurer que le logiciel développé peut être compris dans la langue locale où il est utilisé. Ce type de test est également appelé test d'internalisation.
Par exemple , le logiciel doit être testé dans diverses langues internationales telles que le chinois, l'italien, le russe, etc.
Liste de contrôle des tests de portabilité
La liste de contrôle comprend les exigences qui doivent être testées dans le cadre du test de portabilité.
Avant de procéder à la préparation d'une liste de contrôle, il est impératif de s'assurer que tous les composants individuels du système sont soigneusement testés et intégrés les uns aux autres pour former un grand système.
Tous les objectifs des tests de portabilité doivent être gardés à l'esprit pour que la liste de contrôle soit efficace et efficiente.
- Ces tests doivent répondre à toutes les exigences de portabilité.
- Le test de l'application sur plusieurs systèmes d'exploitation doit être effectué.
- Le test de l'application sur plusieurs versions de navigateur doit être effectué.
- Ces tests peuvent être automatisés pour des tests de régression continus.
- Ces tests doivent être effectués de manière incrémentielle et itérative tout au long du cycle de vie du développement logiciel.
Avantages et inconvénients
Les tests de portabilité ont leurs propres mérites ainsi que des inconvénients comme tout autre test. Jetons un œil à eux.
Avantages:
- Il aide à identifier les dépendances entre plusieurs composants.
- Ce test est particulièrement utile dans les grands systèmes, qui ont plusieurs sous-systèmes qui interagissent les uns avec les autres.
- Ce test est préférable lorsque les clients d'un produit utilisent plusieurs systèmes d'exploitation avec plusieurs versions de navigateur.
- Les bogues manqués lors des tests unitaires et d'intégration peuvent être découverts à l'aide de ces tests.
- L'installation et la désinstallation du logiciel peuvent également être testées dans le cadre de ces tests.
- La réactivité et les performances d'une application peuvent être testées sur plusieurs navigateurs et plusieurs systèmes d'exploitation.
- L'apparence et la convivialité de l'application sur plusieurs navigateurs et plusieurs systèmes d'exploitation peuvent être validées à l'aide de ce test.
- Ce test permet de déterminer si la fonctionnalité de l'application est conforme aux attentes sur plusieurs systèmes d'exploitation et plusieurs navigateurs.
- Cela permet également d'éliminer la propagation des erreurs entre plusieurs systèmes.
Les inconvénients:
- Ce test n'est généralement pas préféré lorsqu'il y a une contrainte de temps sur le cycle de test du logiciel.
- Ces tests nécessitent beaucoup de budget de la part de l'organisation car ils nécessitent plusieurs configurations pour les tests, telles que plusieurs systèmes d'exploitation et plusieurs navigateurs.
- Toutes les configurations matérielles d'installation doivent être disponibles pour que les tests de portabilité soient effectués. Cela signifie qu'une organisation doit payer pour fournir un support pour la maintenance des configurations matérielles d'installation.
- Les tests de portabilité sont un processus répétitif qui signifie que les testeurs peuvent perdre leur concentration pendant les tests.
- L'automatisation des tests de portabilité est une tâche fastidieuse et nécessite la compétence et la patience des testeurs pour être mise en œuvre avec succès.
- L'exécution de tests de portabilité dans un environnement multi-utilisateurs peut être très délicate. En outre, cela nécessite une charge de travail importante pour les données pour que les tests réussissent.
- L'espace de stockage pour les environnements d'hébergement peut devenir coûteux pour une organisation.
Exemples de tests de portabilité
Voici quelques exemples classiques:
- Logiciel conçu pour fonctionner sur les systèmes d'exploitation Windows 7 et Macintosh.
- Applications conçues pour fonctionner sur les appareils Apple iOS et Google Android.
- Logiciel conçu pour être compatible avec le navigateur Microsoft Edge et le navigateur Google Chrome.
- Jeux vidéo conçus pour fonctionner sur les systèmes d'exploitation Windows 10 et Apple Macintosh.
- Logiciel conçu pour fonctionner sur un serveur MySQL Windows 7 et une base de données Oracle Macintosh.
- Installation de logiciels sur les systèmes d'exploitation Windows 10 et Windows XP.
- Désinstallation de logiciels sur les systèmes d'exploitation Macintosh et Linux.
Conclusion
Le test de portabilité est généralement préféré lorsqu'il est nécessaire de déplacer le composant logiciel d'un environnement à un autre. Ces tests aident à découvrir les défauts qui ne sont pas identifiés dans le cadre des tests unitaires et des tests d'intégration système.
Un inconvénient majeur des tests de portabilité est le montant du budget à allouer à ces tests car il nécessite l'utilisation de plusieurs configurations matérielles. La maintenance et la prise en charge de ces configurations matérielles peuvent être une tâche très fastidieuse et longue.
Par conséquent, les tests de portabilité sont généralement préférés lorsque les avantages l'emportent sur les inconvénients.
J'espère que vous auriez bien compris le concept de test de portabilité à travers cet excellent tutoriel!
lecture recommandée
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Types de tests logiciels: différents types de tests avec des détails
- Test fonctionnel vs test non fonctionnel
- Emploi d'assistant QA en test logiciel
- Test de logiciel pratique - Nouvel eBook GRATUIT (Télécharger)
- Qu'est-ce que les tests d'endurance dans les tests logiciels (exemples)
- Test alpha et test bêta (un guide complet)
- Penser hors de la boîte tout en testant un logiciel!