Dernière mise à jour le 30 septembre 2020 — Continuous Testing Expert

Offrir de la valeur commerciale est le nom du jeu chez Experitest et notre organisation mère Digital.ai. Nous souhaitons tous deux renforcer la confiance des clients via des expériences numériques innovantes. La portée de l'ensemble de l'organisation est basée sur Gestion de la chaîne de valeur ou VSM, notre partie du processus, comme vous le savez sûrement déjà, consiste à aider nos clients à fournir des applications Web et mobiles impeccables. L'une des façons dont nous procédons est avec Test de performance c'est pourquoi j'ai écrit cette liste de contrôle pour les tests de performances, mais d'abord.

Notre continuous testing plateforme a deux cibles principales :

  1. Création et exécution de centaines de tests manuels ou automatisés en parallèle sur de vrais appareils dans le cloud.
  2. Automatisation de votre tests multi-navigateurs en exécutant des tests Selenium sur plus de 1,000 XNUMX types, versions et systèmes d'exploitation de navigateurs.

"Mais attendez", je peux vous entendre me crier dessus dans votre meilleure impression de Ron Popiel, "Il y a plus". Et vous auriez raison, car même si vous effectuez tous ces tests, si votre application gaspille de la mémoire ou de la batterie, elle s'effondrera dès qu'elle arrivera sur l'App Store. C'est pourquoi nous avons préparé cette liste de vérification des tests de performance pour vous aider.

Qu'est-ce qu'un test de performance ?

Le processus de test des performances des applications Web et mobiles consiste à tester la vitesse, le temps de réponse, la stabilité de la fiabilité et l'évolutivité de votre application à l'aide d'une charge de travail donnée. Le résultat que vous recherchez est de vous débarrasser de tout goulot d'étranglement de performances dans vos applications Web et mobiles. Dans certains cercles, il est connu par l'argot "Perf Testing" à ne pas confondre avec les tests de pistolets jouets à projectiles en mousse. Ce serait connu sous le nom de Nerf Testing.

Les tests de performance se concentrent sur les éléments suivants :

  • Vitesse – La rapidité avec laquelle votre application répond.
  • Stabilité - La stabilité d'une application sous des contraintes de charge.
  • Évolutivité - Le nombre maximum d'utilisateurs qui peuvent charger l'application à la fois sans problème.

Sans performances, les tests visant à éliminer les goulots d'étranglement de performances de vos applications Web et mobiles risquent de souffrir d'un fonctionnement lent lorsque trop d'utilisateurs y accèdent, d'une mauvaise convivialité et d'un fonctionnement incohérent sur différents systèmes d'exploitation.

Voici quelques statistiques gracieuseté de Dun & Bradstreet qui illustrent l'importance des tests de performance.

  • Les entreprises du Fortune 500 subissent près de 2 heures d'indisponibilité par semaine. Cela représente environ 46 millions de dollars par an.
  • Google s'est écrasé pendant 5 minutes en 2013, ce qui leur a coûté jusqu'à 550 XNUMX dollars.
  • Lors d'une récente panne d'AWS, les entreprises ont perdu des ventes d'une valeur allant jusqu'à 1100 $ par seconde.

Armés de ces informations importantes, examinons la liste de contrôle des tests de performance en commençant par les différents domaines de performance qui doivent être testés avec un exemple pour chacun.

Types de tests de performance

liste de vérification des tests de performance

test de charge – Un processus de web non fonctionnel et test d'applications mobiles où les performances sont mesurées sous la charge attendue spécifique de l'application. Ce type de test de performances identifie le comportement d'une application Web ou mobile lorsqu'elle est consultée par de nombreux utilisateurs différents à la fois. Le but des tests de charge est de release goulots d'étranglement des performances des applications, tout en rendant simultanément une application plus stable et hautement fonctionnelle avant release.

  • Exemple de test de charge – Une compagnie aérienne a connu de nombreux plantages d'applications alors que des millions de personnes tentaient de modifier leurs vols en raison de la situation de Covid-19.

Test de stress – Il s'agit du prochain niveau de test de charge. Au lieu d'essayer de voir comment une application fonctionne sous les charges attendues, l'idée ici est d'accumuler la charge jusqu'à ce que vous trouviez le point d'arrêt de l'application. Vous souhaitez effectuer un test de résistance afin de trouver le point de rupture de votre application.

  • Exemple de test de résistance – Une compagnie aérienne qui s'efforce d'améliorer ses capacités de charge teste son application à la charge de 2,500 2,000 au lieu des XNUMX XNUMX pour lesquels l'application est évaluée.

Test d'endurance - Également connu sous le nom de test d'endurance Soak Testing, il vérifie combien de temps une application Web ou mobile peut fonctionner à sa charge maximale prévue. Cela aide à découvrir des problèmes tels que les fuites de mémoire.

  • Exemple de test d'endurance – Une entreprise comptable a une application qui aide les gens à produire leurs déclarations de revenus. Comprenant que ce processus prend beaucoup de temps, l'entreprise exécuterait des tests d'endurance qui duraient 24 à 48 heures pour s'assurer que l'application fonctionnait correctement.

Test de pointe - Teste le fonctionnement d'une application Web ou mobile en cas d'augmentation soudaine du nombre d'utilisateurs. De plus, cela aide à comprendre comment les applications récupèrent de ces rafales soudaines de trafic.

  • Exemple de test de pointe - Une application de médias sociaux connaît d'énormes rafales de trafic lorsque des nouvelles virales arrivent. Ils utilisent des tests de pointe pour simuler des expériences de nouvelles virales.

Tests de volume – Ceci est accompli en ajoutant une grande quantité de données à votre base de données Web ou d'application mobile. L'objet est de voir comment l'application s'exécute sous différents volumes de base de données.

  • Exemple de test de volume - Une application de vente au détail doit ajouter des centaines de nouveaux vêtements pour la nouvelle saison. Ils entrent toutes ces informations dans la base de données, puis exécutent leurs tests de performance.

Types de mesures mesurées avec les tests de performance

La façon dont nous effectuons ces différents types de tests de performance consiste à surveiller les appareils et à mesurer diverses mesures qui nous montreront comment améliorer nos applications Web et mobiles. Avant de plonger, une petite précision.

  • Dimensions – Toutes les données collectées à partir d'une application.
  • Métrique – Utilisation des mesures pour définir la qualité des résultats (temps de réponse moyen/total, etc.).

Voici la liste de contrôle des tests de performances pour mesurer la vitesse, la stabilité et l'évolutivité.

  • Temps de réponse – Le temps nécessaire pour envoyer une demande et recevoir une réponse.
  • Temps d'attente – Combien de temps il faut pour recevoir l'octet #1 après l'envoi d'une requête. Également appelée latence moyenne.
  • Temps de chargement moyen – Délai moyen de livraison des demandes. Le principal indicateur de la qualité des applications d'un point de vue UX.
  • Temps de réponse maximal – Mesure du temps le plus long nécessaire pour qu'une demande soit remplie. Si ce temps est plus long que la moyenne, cela peut indiquer un problème.
  • Taux d'erreur – En comparant le pourcentage de demandes qui entraînent des erreurs à toutes les demandes, vous calculerez ce nombre. Ces erreurs résultent généralement de problèmes de dépassement de la capacité de charge.
  • Utilisateurs concurrents – Nombre total d'utilisateurs actifs à tout moment. Également appelée taille de charge.
  • Requêtes par seconde – Nombre de demandes traitées
  • Transactions réussies/échouées – Le nombre total de requêtes, qu'elles aboutissent ou non.
  • Cadence de production – Quantité de bande passante utilisée pendant le test. Mesuré en Ko par seconde.
  • utilisation du processeur – Temps nécessaire à la CPU pour traiter une requête.
  • Utilisation de la mémoire – Mémoire nécessaire pour traiter une requête.

Outils pour tester les performances des applications Web et mobiles

Il existe de nombreux outils qui vous aident à mettre en œuvre des tests de performance de manière précoce et continue dans le cadre de votre pipeline CI. Ces outils vous aident à fournir des logiciels de haute qualité avec une expérience client exceptionnelle.

Avec le nombre croissant de ces outils et la difficulté à les différencier, nous nous concentrerons simplement sur notre outil.

L'offre de test de performance de DécouvrirTest vous donne la possibilité d'ajouter des tests de performances mobiles et Web à votre suite d'automatisation des tests. En utilisant des tests de performances pour les mobiles et le Web, vous découvrirez rapidement la cause des problèmes de performances. Cela éliminera les retards de livraison et avant que vos utilisateurs ne les trouvent.

Notre outil fournit également des mesures approfondies des données de performance, notamment :

  • Durée de la transaction
  • Indice de vitesse
  • Consommation CPU
  • Consommation de mémoire
  • Consommation de batterie
  • Données réseau (téléchargement et téléchargement)

Apporter de la valeur avec cette liste de contrôle des tests de performance

Les tests de performances permettent de révéler le comportement de vos applications Web et mobiles dans différentes situations. Bien sûr, il pourrait bien fonctionner avec 10 100 utilisateurs qui l'exécutent simultanément, mais qu'en est-il de XNUMX XNUMX ou plus ? Le désir de fournir une expérience d'application à haute vitesse, stable et évolutive motive les tests de performance.

Pour conclure, nous avons vu ci-dessus comment les tests de performances des applications aident votre application Web et mobile releases. La vérité est que ce type de test doit être mis en œuvre tôt dans le processus de développement. Cela vous permettra d'attraper les bogues plus tôt et, par extension, d'augmenter la satisfaction tout en économisant du temps et de l'argent.

Jonny Steiner - Reseaux Sociaux

Êtes-vous prêt à faire évoluer votre entreprise ?

Explorer

Quoi de neuf dans le monde de Digital.ai

Le 18 juin 2024

Comment Continuous Testing Favorise la collaboration en matière de développement et de sécurité : l'approche à la mode du développement sécurisé

Découvrez comment continuous testing et app sec favorisent un SDLC collaboratif, créant un labyrinthe complexe pour les attaquants tout en responsabilisant les équipes et en réduisant les coûts.

En savoir plus
10 mai 2024

Le groupe bancaire BPCE rationalise son processus d’assurance qualité et de livraison avec Digital.ai Continuous Testing

Découvrez comment le groupe bancaire BPCE a révolutionné les tests avec Digital.ai Continuous Testing, favorisant l'efficacité et la qualité de l'innovation bancaire.

En savoir plus
22 avril 2024

Les biais dans la machine : les biais des données de formation et leur impact sur le code généré par les assistants de code IA

Explorez les biais dans les données de formation en IA ayant un impact sur la génération de code et apprenez des stratégies pour les atténuer pour un développement de l'IA et une innovation logicielle plus équitables.

En savoir plus