functional testing vs performance testing
Test fonctionnel vs test de performance:
Différences entre Test de performance, test de charge et test de contrainte ont été expliqués avec des exemples dans notre dernier tutoriel.
Les tests logiciels couvrent un large éventail de domaines dans lesquels toute vérification ou validation de la fonctionnalité du logiciel peut avoir lieu. Parfois, les aspects non fonctionnels deviennent moins importants pour les aspects fonctionnels. Ils ne sont pas exécutés pratiquement; simultanément pendant les tests logiciels.
=> Cliquez ici pour une série complète de didacticiels sur les tests de performance
Cet article explique les avantages supplémentaires de la qualité du produit logiciel au cours de divers scénarios du cycle de vie des tests logiciels lorsque fonctionnel et non fonctionnel sont pris simultanément.
Ce que vous apprendrez:
- Différence rapide entre les tests de performance et les tests fonctionnels
- Pourquoi les tests fonctionnels et les tests de performance doivent-ils être effectués simultanément?
- Étude de cas
- Conclusion
- lecture recommandée
Différence rapide entre les tests de performance et les tests fonctionnels
Sl NON | Test fonctionel | Test de performance |
---|---|---|
1 | Pour vérifier la précision du logiciel avec des entrées définies par rapport à la sortie attendue | Pour vérifier le comportement du système dans diverses conditions de charge |
deux | Il peut être manuel ou automatisé | Il peut être exécuté efficacement s'il est automatisé |
3 | Un utilisateur effectuant toutes les opérations | Plusieurs utilisateurs effectuant les opérations souhaitées |
4 | Implication requise du client, du testeur et du développeur | Participation requise de la part du client, du testeur, du développeur, de l'équipe de gestion DBA et N / W |
5 | Environnement de test de taille de production non obligatoire et les exigences H / W sont minimales | Nécessite à proximité de l'environnement de test de production et de plusieurs installations H / W pour remplir la charge |
Pourquoi les tests fonctionnels et les tests de performance doivent-ils être effectués simultanément?
Les tests fonctionnels deviennent beaucoup plus importants pour toute pré-version logicielle. Basé sur les résultats réels verification ET VALIDATION dans l'environnement de production ou de test répliqué, c'est là que les tests ont généralement lieu.
Les fuites défectueuses peuvent devenir l'un des plus grands problèmes:
Les testeurs ont plus de responsabilités que les développeurs en termes de qualité du produit. Fondamentalement, ils ne veulent pas que le produit testé présente des fuites défectueuses. Les testeurs ont généralement tendance à n'effectuer que des tests fonctionnels pour y parvenir.
Ce qui suit est une conversation entre unTest Manager et un testeur :
(Test Manager est appelé «TM» et le testeur «TR»)
TM : Salut mon pote… Comment allons-nous tester le produit «A»?
TR : Oui… Nous progressons de plus en plus.
TM : C’est fantastique… Et quelle est notre portée en termes de tests de performances pendant que les tests fonctionnels sont en cours d’exécution?
TR : Nous ne les couvrons pas, nos livrables sont censés être uniquement dans le domaine fonctionnel et non sur le domaine non fonctionnel. De plus, l’environnement de test que nous utilisons n’est pas une réplique exacte de la production.
Il y a quelques questions de la conversation ci-dessus à considérer:
- Les tests fonctionnels ont-ils un facteur dépendant de la performance?
- Que faire si les performances du logiciel sont dégradées, mais que la livraison du produit se produit sans vérifier les performances?
- Test de performance - coexiste-t-il dans le processus de test fonctionnel?
Il est devenu une pratique courante pour les testeurs de ne pas travailler sur les aspects non fonctionnels à moins qu'on ne leur demande de le faire. Il est courant d’éviter tests non fonctionnels jusqu'à ce que le client ait signalé des problèmes avec les performances du logiciel testé.
Donc, il y a 2 questions à considérer:
- Performance - cela a-t-il un impact sur les tests fonctionnels?
- Gardons-nous les tests de performance comme un livrable distinct, même si cela inquiète le client?
Le test de performance est important !
comment ouvrir les fichiers torrent mac
Le logiciel fonctionne sur la base de diverses architectures et modèles suivants, notamment:
- Modèles de réponse de réponse requis
- Systèmes basés sur les transactions
- Systèmes basés sur la charge
- Systèmes basés sur la réplication de données
Le comportement de test fonctionnel du modèle systématique mentionné ci-dessus dépend des performances du système.
Le point de vue de l'automatisation nécessite beaucoup d'attention pour les tests de performance.
Ce qui suit est une conversation entre unclient et le Test Manager.
(Le client est appelé «CL» et le gestionnaire de test «TM»)
CL : Par conséquent, pour arriver à la solution que nous avons demandée, j'espère qu'il y aura plusieurs itérations des tests qui se déroulent actuellement.
TM : Oui, cela peut être fait. Comme vous l'avez dit, il y aura une probabilité plus élevée de tests itératifs, nous aimerions proposer une automatisation pour traiter les tests fonctionnels (de régression).
CL : OK, merci de nous envoyer votre approche afin que nous puissions l'approuver. L'automatisation aura un rendement beaucoup plus élevé avec un minimum d'effort.
TM : Exactement. Nous travaillerons sur l'approche et vous répondrons avec une preuve de concept.
D'après la conversation ci-dessus, il est clair que le besoin des clients est d'optimiser l'efficacité.
Étude de cas
La société ABC travaille sur un projet de développement du logiciel A. Le test du logiciel A est réalisé par la société XYZ.
Le contrat pour la société ABC et XYZ comporte certaines restrictions pour leur collaboration. Toute discussion entre les 2 entreprises devrait avoir lieu une fois par semaine ou trois fois par mois. Le système fonctionne sur un modèle de mode demande-réponse. La phase de développement a été réalisée par la société ABC.
Il est maintenant temps pour la société XYZ d’effectuer les tests fonctionnels formels sur le logiciel A. XYZ commence à tester le logiciel A. Ils ont donné une note claire au logiciel et ont donné le «Go» pour la mise en œuvre en direct après 2 cycles de test.
Malgré le certificat de qualité de l'équipe de test, la mise en œuvre en direct ne s'est pas bien déroulée. Il y avait beaucoup de bugs de post-production. Les clients ont été confrontés à un grand nombre de problèmes, notamment une interruption des fonctionnalités des processus métier de bout en bout.
Alors maintenant quel est leproblème?
- Est-ce un problème avec une restriction de collaboration entre l'équipe de développement et de test?
- Est-ce que les exigences n'ont pas été capturées à 100%?
- Est-ce que le produit n'a pas été testé dans un environnement de test approprié?
- Ou d'autres causes?
Après une recherche et une analyse minutieuses, leles suivants ont été déduits:
- Il y avait peu d'applications dépendantes et interdépendantes qui avaient des problèmes de performances lors de la récupération des réponses.
- Les entrées de test utilisées n'étaient pas absolues.
- La robustesse du logiciel n'a pas été prise en compte.
- Beaucoup de problèmes de synchronisation entre les multiples applications indépendantes.
- Les tests du logiciel ont fait plusieurs reprises qui n'ont pas été prises en compte.
Par conséquent, après ledes mesures correctivesl'équipe de planification est intervenue, les éléments suivants ont été suggérés:
- L'interaction entre l'équipe de développement et l'équipe de test doit être augmentée.
- Toutes les applications dépendantes doivent être connectées et incluses dans les tests fonctionnels du système
- La valeur du délai de demande et de réponse doit être augmentée pour laisser de la place aux environnements hors production
- Diverses entrées allant du simple au complexe doivent être utilisées dans les tests fonctionnels
- Les tests non fonctionnels, en particulier les tests de performance et de charge, doivent être effectués conformément aux conseils de l'équipe de correction.
- En plus des tests du système, des tests d'intégration du système doivent être effectués.
- Un intervalle de temps minimal entre deux itérations de test doit être fourni. C'est pour re-tester les bogues précédemment identifiés.
- Tous les bogues identifiés dans les itérations précédentes doivent être corrigés dans l'itération actuelle.
L'équipe de test a mis en œuvre toutes les actions proposées et un grand nombre de défauts ont été découverts en peu de temps.
Observations:
- Le calendrier de mise en œuvre en direct du logiciel s'est considérablement amélioré en optimisant les temps de cycle de test.
- Il y a eu de bons progrès dans l'optimisation de la qualité des logiciels. Il y a donc eu une diminution considérable des tickets de support après la mise en œuvre.
- Les retouches ont été réduites et il testait des itérations au lieu de retravailler. Entre les différentes itérations, de meilleures améliorations de la qualité ont été observées.
Conclusion
Effectuer des tests non fonctionnels pendant l'exécution des tests fonctionnels est plus avantageux et ajoutera davantage d'avantages à la qualité globale du logiciel. Cela identifiera les bogues de performances (limités à l'environnement de test et aux dépendances) et réduira donc les situations d'hypothèses de problèmes fonctionnels.
Une planification suffisante pour effectuer des tests fonctionnels et non fonctionnels (à un niveau minimum) doit être effectuée afin de maintenir une relation solide entre les autres parties prenantes du projet.
À propos de l'auteur: Ceci est un article écrit par Nagarajan. Il travaille en tant que responsable de test avec plus de 6 ans d'expérience en test dans divers domaines fonctionnels tels que la banque, les compagnies aériennes, les télécommunications en termes de manuel et d'automatisation.
Notre prochain tutoriel vous expliquera plus en détail le plan de test de performance et la stratégie de test.
=> Visitez ici pour une série complète de didacticiels sur les tests de performances
Tutoriel PREV | Tutoriel SUIVANT
lecture recommandée
- Test fonctionnel vs test non fonctionnel
- Meilleurs outils de test de logiciels 2021 (Outils d'automatisation des tests QA)
- Test de performance vs test de charge vs test de stress (différence)
- Georgia Tech standardise ses tests de performances sur RadView WebLOAD
- Différence entre les tests de bureau, client-serveur et Web
- Téléchargement de l'e-book 'Testing Primer'
- Les différences entre les tests unitaires, les tests d'intégration et les tests fonctionnels
- Test des performances du cloud: fournisseurs de services de test de charge basés sur le cloud