configuration testing tutorial with examples
Introduction aux tests de configuration logicielle:
Cet article vous a été présenté pour discuter d'un type spécial de test logiciel qui est très important pour l'entreprise.
Nous discuterons des bases du test de configuration, de son besoin, de son importance, de ses objectifs et de ses types. Au fur et à mesure que nous progresserons dans l'article, nous apprendrons en détail comment effectuer ces tests.
Commençons!!
comment ajouter des éléments de tableau en java
Ce didacticiel vous donnera un aperçu complet des tests de configuration et servira de guide parfait à toute personne qui découvre ce concept de test et rafraîchira les connaissances de ceux qui en ont déjà l'expérience.
Ce que vous apprendrez:
- Qu'est-ce que le test de configuration?
- Pourquoi ce test?
- Préparation du test de configuration
- Microsoft VSTS - Outil de test de configuration
- Buts
- Types de tests de configuration
- Importance de ces tests pour une entreprise
- Conclusion
- lecture recommandée
Qu'est-ce que le test de configuration?
Le test de configuration est une méthode de test d'un système en cours de développement sur plusieurs machines qui ont différentes combinaisons ou configurations de matériel et de logiciel. Les performances du système ou d'une application sont testées par rapport à chacune des configurations matérielles et logicielles prises en charge.
Lorsque nous disons différentes configurations de matériel et de logiciel, cela est attribué à plusieurs versions de système d'exploitation, navigateurs, pilotes pris en charge, tailles de mémoire, types de disques durs, processeurs, etc.
Pourquoi ce test?
Comme discuté ci-dessus, ce test est une technique qui évalue les performances d'un logiciel, d'un système / d'une application en tenant compte des différentes configurations du système.
Ces tests sont effectués pour déterminer les configurations optimales dans lesquelles un système ou une application peut fonctionner correctement sans bogues, problèmes ou défauts de performances. Ainsi, la configuration la plus efficace qui fournira les caractéristiques de performance requises est repérée à l'aide de ces tests.
La deuxième raison principale de ces tests est de vérifier la compatibilité du système avec les autres logiciels ou équipements indiqués dans le SRS (spécification des exigences logicielles).
Un exemple
Considérons que votre entreprise a développé une application de bureau en langage C # et que cette application est basée sur le framework .NET.
Et cette application est basée sur une architecture à 3 niveaux qui comporte trois couches: front-end (client), la couche application (serveur) et la couche base de données. Chacune des couches prendra en charge certaines plates-formes en conséquence.
Supposons que chaque couche prend en charge les plates-formes ci-dessous:
Client - Système d'exploitation Windows 10, Windows 7, Windows XP, système d'exploitation Linux.
Serveur - Serveur Ubuntu, Windows Server 2016 , Novell Open Enterprise Server .
Base de données - Microsoft SQL Server, IBM DB2, MySQL.
Maintenant, en tant que testeur de logiciel, vous devrez tester l'application sous chacune des différentes combinaisons des plates-formes client, serveur et base de données ci-dessus pour vous assurer que l'application fonctionne bien avec chacune des configurations possibles.
Par exemple , vous vérifierez comment l'application fonctionne avec la combinaison du système d'exploitation Windows 10, Windows Server 2016 et la base de données MySQL, puis vous effectuerez un autre test pour vérifier le fonctionnement de l'application avec la combinaison du système d'exploitation Windows 10, Windows Server 2016 et la base de données IBM DB2.
Et ainsi de suite jusqu'à ce que vous testiez toutes les configurations possibles.
Nos tests ne se limiteront pas seulement au logiciel, mais couvriront également le matériel, où nous devrons vérifier chacune des combinaisons de divers périphériques matériels. Par conséquent, ces tests sont parfois également appelés tests de configuration matérielle.
Préparation du test de configuration
Ce test comporte certains pré-requis qui doivent être remplis avant d'exécuter les tests de configuration.
Voici les prérequis:
# 1) Préparation de la matrice de couverture
En raison du grand nombre de configurations matérielles et logicielles possibles, il devient très chronophage et presque impossible de tester chacune des configurations efficacement.
Par exemple , dans l'exemple que nous avons discuté ci-dessus, nous aurons un total de 3 * 3 * 3 soit 27 configurations logicielles. Et supposons que nous ayons 5 disques durs différents et 6 tailles de mémoire différentes. Ensuite, le décompte passera à 27 * 5 * 9, soit 810 configurations maintenant.
Cela continuera d'augmenter si nous ajoutons plus de composants à l'image. Il devient donc crucial de planifier l'effort de test logiciel et d'identifier clairement quelles plates-formes seront prises en charge.
Ensuite, nous devons proposer une matrice de couverture qui contiendra les différentes combinaisons de configurations matérielles et logicielles. Parfois, cette matrice de couverture est également connue sous le nom de BCM (Basic Configuration Matrix).
La figure ci-dessus montre un exemple de matrice schématique de configurations que vous souhaitez tester.
# 2) Prioriser les configurations
Une fois la matrice de configuration préparée, l'étape suivante consiste à hiérarchiser les configurations.
Cette étape est nécessaire car il est impossible de tester toute la vaste gamme de configurations. Ainsi, sur la base des commentaires des clients, les configurations les plus critiques sont enrôlées et elles doivent d'abord être minutieusement testées.
Une fois que nous avons terminé les deux étapes ci-dessus, nous pouvons continuer à tester les différentes configurations en fonction de leur priorité.
Microsoft VSTS - Outil de test de configuration
Microsoft Visual Studio Team Services (VSTS) est un outil qui aide grandement à tester votre application sous diverses configurations en fonction de votre plan de test.
Vous devez avoir un plan de test pour décider quels tests vous souhaitez exécuter et sur quelles configurations. Vous devez vous assurer que vous disposez du bon environnement configuré pour les configurations dont vous avez besoin. Une fois que vous avez la matrice des combinaisons, vous devez la tester.
Vous pouvez suivre les étapes ci-dessous pour effectuer ce test:
#1) Configurez les configurations et créez les variables. Une variable est l'un des composants de votre configuration.
Par exemple , il peut y avoir une variable «Navigateur» qui peut avoir plusieurs valeurs comme Chrome, Firefox, IE10, etc.
#deux) Attribuez les configurations aux plans de test / suites de tests ou aux cas de test individuels.
# 3) Exécutez les tests sur chaque configuration.
# 4) Suivez les résultats des tests pour chacune des configurations.
Un guide détaillé étape par étape pour effectuer ces tests avec VSTS peut être consulté ici: VSTS - Testez différentes configurations
Buts
Voici les différents objectifs de ce test:
- Déterminer la configuration optimale de l'AUT (Application sous Test).
- Pour découvrir les vulnérabilités cachées contenues par le matériel.
- Assurer la continuité des activités en détectant et en résolvant les problèmes avant qu'ils n'entravent les opérations commerciales.
- Pour éliminer une dérive de configuration.
- Pour minimiser le nombre d'échecs dus à des erreurs de configuration d'hôte.
- Valider l'application pour s'assurer qu'elle satisfait la configurabilité.
- Pour analyser les performances du système en ajoutant, supprimant ou modifiant les composants matériels ( Par exemple . Varier les tailles de mémoire, ajouter des équilibreurs de charge, etc.).
- Pour vérifier si le système fonctionne correctement dans un environnement distribué géographiquement (les serveurs et les clients sont situés à des endroits différents).
- Vérifier la facilité avec laquelle les bogues peuvent être répliqués indépendamment des changements de configuration.
- Pour vérifier dans quelle mesure les éléments de l'application sont traçables et gérables.
Types de tests de configuration
Nous pouvons avoir deux lignes différentes des divisions pour ces tests.
Sur le Première ligne , il peut être divisé en deux parties:
- Test de configuration logicielle
- Test de configuration matérielle
Sur le deuxième ligne , il peut à nouveau être divisé en deux parties - 1. Test au niveau du client et 2. Test au niveau du serveur
Pour commencer, voyons la configuration matérielle et logicielle.
# 1) Test de configuration logicielle:
Ces tests sont effectués sur l'AUT (application sous test) avec plusieurs versions d'OS, mises à jour logicielles, etc. C'est un test de longue haleine car il prend un temps énorme pour installer et désinstaller les différents logiciels qui doivent être utilisés pour les tests.
Une approche pour gagner du temps consiste à utiliser des machines virtuelles pour tester la configuration logicielle. Une VM simule les configurations en temps réel et donne la même sensation qu'une machine physique.
Ainsi, au lieu d'installer et de désinstaller plusieurs logiciels sur une seule machine physique, nous pouvons avoir plusieurs machines virtuelles simulant chaque configuration différente par rapport à laquelle nous devons effectuer les tests.
Les tests de configuration logicielle commencent une fois la version publiée après avoir passé le test unitaire et le test d'intégration.
# 2) Test de configuration matérielle:
Les tests de configuration matérielle sont généralement effectués dans des laboratoires, où nous avons des machines physiques avec divers matériels connectés.
Chaque fois qu'une version est publiée, le logiciel doit être installé sur toutes les machines physiques auxquelles le matériel est connecté, et la suite de tests doit être exécutée sur chaque machine pour confirmer que l'application fonctionne correctement.
Pour accomplir la tâche mentionnée ci-dessus, un effort important est nécessaire pour configurer le logiciel sur chaque machine, y connecter le matériel, puis exécuter manuellement les suites de tests. Même si nous automatisons cette tâche et exécutons la suite de tests, même dans ce cas, un effort important serait nécessaire.
De plus, comme nous l'avons déjà discuté dans la première partie de cet article, tout en effectuant un test de configuration matérielle, nous précisons le type de matériel à tester, et il existe de nombreux matériels et périphériques informatiques qui rendent presque impossible d'exécuter tous les des tests.
Ainsi, un testeur analyse quel matériel est principalement utilisé par le client, puis effectue les tests en fonction de la hiérarchisation.
Parlons maintenant des tests de configuration au niveau client et au niveau serveur.
# 1) Test au niveau du client : Il a un point commun avec les tests d'utilisabilité et de fonctionnalité. Ces tests sont effectués du point de vue des intérêts de son utilisateur direct.
# 2) Test au niveau du serveur : Ce type de test est effectué pour étudier l'interaction entre le logiciel et l'environnement externe lorsqu'il est prévu d'être intégré après la sortie.
Importance de ces tests pour une entreprise
Ces tests sont très importants pour une entreprise afin de proposer des applications hautement performantes, évolutives et disponibles.
Ces tests doivent être effectués de manière continue et de préférence automatisée (sinon, ils prennent beaucoup de temps lorsqu'ils sont effectués manuellement) dans le but d'identifier et de corriger rapidement les facteurs qui contribuent aux inefficacités.
11 MEILLEURS outils de gestion de la configuration logicielle (outils SCM en 2020)
Conclusion
Le test de configuration est aussi important que tout autre type de test logiciel car il découvre la configuration optimale du système dans lequel l'application fonctionne au mieux. En outre, il aide à identifier et à corriger les problèmes de compatibilité.
Dans cet article, nous avons appris ce qu'est le test de configuration, pourquoi effectuons-nous ce test, quels sont ses objectifs, quels sont ses types, quelles sont les conditions préalables de ce test, comment il doit être fait, quelle est son importance pour un entreprise, etc., de manière détaillée.
J'espère que cet article était informatif et vous aurait apporté une idée juste des tests de configuration.
lecture recommandée
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Test fonctionnel vs test non fonctionnel
- Tutoriel de test par paires ou de test toutes paires avec outils et exemples
- Emploi d'assistant QA en test logiciel
- Tutoriel de test de volume: exemples et outils de test de volume
- Tutoriel sur les tests destructifs et les tests non destructifs
- Tutoriels Eclipse détaillés pour les débutants
- Qu'est-ce que les tests d'endurance dans les tests logiciels (exemples)