Test de stabilité dans les tests de logiciels

Table des matières:

Anonim

Test de stabilité

Le test de stabilité est un type de test logiciel non fonctionnel effectué pour mesurer l'efficacité et la capacité d'une application logicielle à fonctionner en continu sur une longue période de temps. Le but des tests de stabilité est de vérifier si l'application logicielle plante ou échoue sur une utilisation normale à tout moment en exerçant sa gamme complète d'utilisation.

Les tests de stabilité sont effectués pour vérifier l'efficacité d'un produit développé au-delà de la capacité opérationnelle normale, souvent jusqu'à un point d'arrêt. La gestion des erreurs, la fiabilité du logiciel, la robustesse et l'évolutivité d'un produit sous forte charge sont plus importantes que la vérification du comportement du système dans des circonstances normales.

Les tests de stabilité évaluent les problèmes de stabilité. Ce test vise principalement à solliciter au maximum le composant logiciel. C'est une technique non fonctionnelle.

Les tests de stabilité sont également appelés tests de charge ou d'endurance.

Dans ce didacticiel, vous apprendrez-

  • Qu'est-ce que le test de stabilité?
  • Problèmes si un système testé n'a pas subi de test de stabilité
  • Pourquoi faire des tests de stabilité
  • Comment faire des tests de stabilité
  • Cas de test pour les tests de stabilité pour les performances du processeur
  • Rapports de test pour les tests de stabilité

Problèmes si un système testé n'a pas subi de test de stabilité

Pour une application en cours de test où un grand nombre d'utilisateurs est introduit et des applications qui doivent s'exécuter pendant des mois sans redémarrage, un certain nombre de problèmes sont susceptibles de se produire:

L'erreur possible peut être confrontée,

  • le système ralentit
  • le système rencontre des problèmes de fonctionnalité
  • le système montre un comportement câblé
  • le système plante complètement

En génie logiciel, les tests de stabilité consistent généralement à exercer le système avec des utilisateurs lourds (virtuels) et à mesurer les paramètres de performance pour vérifier si le système peut supporter la charge anticipée.

Pourquoi faire des tests de stabilité

Ce type de test aide les utilisateurs à comprendre comment le système fonctionnera dans des situations réelles.

Par conséquent, les tests de stabilité vous permettent de vérifier,

  • Ayez confiance en la stabilité de votre système testé.
  • Assurez-vous que votre système peut gérer des programmes volumineux.
  • Surveillez l'efficacité de votre système.
  • Tester la stabilité du système sous contrainte.

Il joue un rôle important dans le développement du produit car il est utilisé pour déterminer les limites d'un produit logiciel testé avant sa sortie ou les domaines à améliorer avant la mise en service ou en production.

Un exemple très courant de technique de test de stabilité est

O nline S hopping P ortals: Les tests de stabilité vérifieront le comportement du site Web lorsque -

  • Élevé Quantité de données saisies aux heures de pointe
  • Nombre de visites à un moment précis
  • Problème de chargement de page en même temps
  • Comportement du système
  • La réactivité du système et bien d'autres font l'objet de tests de stabilité

Un autre exemple

Un test CPU est une forme populaire de test de stabilité dans le cadre de la technique de test de performance. Ce test vérifie la stabilité du processeur et surveille également ses performances à mesure que la charge de travail du processeur augmente.

Comment faire des tests de stabilité

  • Pour déterminer la portée et l'objectif des tests, nous devons nous assurer que le ou les serveurs d'applications ne se bloquent pas pendant les exécutions du test de charge.
  • Pour déterminer les problèmes commerciaux, vérifiez les performances du système et la charge selon le point de vue de l'utilisateur final.
  • Pour attribuer les différentes responsabilités et rôles tels que -Création d'un plan de test, conception de cas de test, revue de cas de test, exécution de tests, etc.
  • Pour garantir les livrables du test dans le délai spécifié
  • Pour s'assurer que les outils de test de charge appropriés et que l'équipe d'expérience est présente pour la même chose.
  • Pour mesurer le risque et le coût implique dans les tests. Cela déterminera le coût de chaque exécution en termes d'utilisation du processeur et de mémoire.
  • Déterminez le suivi et le rapport des défauts, ainsi que la correspondance appropriée avec les exigences.

Cas de test pour les tests de stabilité pour les performances du processeur

  • Pour vérifier la limite supérieure du système.
  • Comment le système se bloque ou se rétablit.
  • Un nombre total de transactions effectuées par demande.
  • Si la réponse des transactions reste stable ou augmente avec le temps.
  • Comment le système se comporte sous une charge importante.
  • Sa réponse et son comportement sous forte charge.

Rapports de test pour les tests de stabilité

Plusieurs statistiques sont collectées et mesurées lors des exécutions de tests; ces chiffres sont analysés afin de générer un rapport et d'identifier d'éventuels problèmes de performance.

Des exemples de statistiques collectées sous test sont:

  • Temps de réponse des transactions : le temps moyen est nécessaire pour effectuer des transactions pendant le test. Cette statistique évaluera si les performances du serveur se situent dans les délais de performances de transaction minimum et maximum acceptables définis pour le système.

    Ces informations évalueront le temps de traitement de la demande par le serveur Web et envoyé au serveur d'application, qui dans la plupart des cas fera une demande à un serveur de base de données.

  • Hits Per Second: Le nombre de hits effectués sur le serveur par les utilisateurs. Ces statistiques permettent de déterminer le nombre de charges générées par les utilisateurs, par rapport à un certain nombre d'appels.
  • Débit: la quantité de débit sur le serveur Web pendant le test qui est mesurée en octets. Le débit désigne la quantité de données que les utilisateurs ont reçues du serveur à un moment donné. Cette statistique permet d'évaluer la quantité de charge générée par les utilisateurs.
  • Transaction par seconde: il s'agit du nombre total de transactions terminées (réussies et échouées) effectuées pendant un test. Cette statistique permet de vérifier la charge de transaction réelle sur le système.
  • CPU: pourcentage d'utilisation du processeur dépensé pendant un test.
  • Mémoire: utilisation de la mémoire pendant un test.
  • Disque: utilisation des espaces disque dépensés lors d'un test.

À ce moment-là, vous pouvez maintenant l'identifier facilement -

Les tests de stabilité relèvent des tests de performances, une technique qui est effectuée pour vérifier certains des attributs de qualité des logiciels tels que la stabilité, la fiabilité et la disponibilité.

Ce test est utilisé pour déterminer la vitesse à laquelle un système ou un sous-système fonctionne sous une charge de travail particulière.

Les tests de performance ont de nombreux types et les tests de stabilité en font partie.

  • Test de résistance : C'est un type de test qui vérifie la robustesse du système au-delà de la capacité du système.
  • Spike testing: Il est utilisé pour vérifier le comportement d'un système en augmentant instantanément la charge d'un système. L'objectif est de vérifier à quel point le système aura des problèmes de performances ou il réussira.
  • Test d'évolutivité: il est utilisé pour vérifier les capacités d'un système. Quelle sera l'efficacité du système face aux besoins croissants, aux changements de taille et aux changements de volume.
  • Test de volume: Il s'agit d'une technique de test non fonctionnelle dans laquelle le logiciel testé est soumis à un énorme volume de données, et le comportement d'un système est vérifié et vérifié en conséquence.
  • Test de charge ou de stabilité : (déjà discuté ci-dessus)

Certains des outils de test de performance sont comme -

  • WebLOAD
  • LoadRunner
  • Apache JMeter
  • NeoLoad
  • CloudTest
  • Tempête de charge
  • LoadUI
  • WAPT
  • LoadImpact
  • Loadster
  • Httperf
  • OpenSTA
  • Testeur de performances
  • Tester n'importe où

Conclusion:

Le test de stabilité est un processus non fonctionnel de test du comportement de l'application en appliquant une charge maximale. Il est effectué pour connaître l'évolutivité du système dans un environnement donné.

Cet article est contribué par Vaibhav Chitransh