J’ai déjà écrit un article au sujet des tests de « performances ». L’idée était de montrer que le terme employé pour les tests de performance était souvent trop générique et englobait un très grand nombre de tests puis de parler de leur mise en place.
Dans cet article je vous présenterai la famille des tests de performance au sens de l’ISO – 25 010 afin de savoir exactement à quoi correspondent les « performances » dans le cadre de la qualité logicielle.
Pour avoir plus d’informations sur la norme ISO – 25 010, je vous invite à lire ou relire le premier article de cette série.
Les tests de performance sont une famille de tests dont on parle de plus en plus, notamment au sein de la taverne avec les articles de Rémi Poulin, mais qui est encore peu connue.
Comme vous pouvez le voir avec l’image ci-dessus, la famille des tests de performance contient, d’après la norme ISO – 25 010, 3 types de tests spécifiques, chacun ayant un rôle bien définit :
- Les tests de temps de réponse
Comme leur nom l’indique les tests de temps de réponse vont calculer, pour les différentes fonctionnalités, le temps que l’application met entre le moment où l’utilisateur a fait son action/demande et le moment où le résultat de cette action est visible/utilisable par l’utilisateur.
Idéalement ces temps de réponse sont clairement définis dans les spécifications. Par exemple : la page d’accueil du site doit s’afficher en moins de 2 secondes pour un téléphone XX en connexion 4G.
Ces tests sont très importants car les temps de réponse trop longs sont souvent objet de frustration et de non-utilisation ! En effet, d’après le Chrome Summit2017, 53% des visiteurs abandonnent un site si la page met plus de 3 secondes à s’afficher !
Les applications sont très souvent présentes pour gagner du temps, dès lors où l’on a l’impression de le perdre, on n’utilise plus l’application !
- Les tests d’utilisation de ressource
Ces tests ont un autre but que les tests de temps de réponse mais de mauvais résultats sur ces derniers peuvent rapidement entrainer une baisse significative du temps de réponse !
En effet, les tests d’utilisation de ressource sont là pour calculer les ressources nécessaires à l’application pour fonctionner. Ces tests permettent donc de détecter des problèmes comme des fuites mémoires ou des défauts d’architecture mais pas seulement !
Ces tests servent aussi travailler sur la consommation de batterie pour toute l’industrie mobile. Il ne faut pas oublier que sur un téléphone les batteries sont limitées et qu’une application consommant toute la batterie d’un téléphone en moins d’une heure ne pourra être utilisée pour ces raisons !
Les tests d’utilisation de ressource sont également essentiels pour savoir si le public visé pourra utiliser notre application. Si l’on développe un MMO RPG que l’on ambitionne un grand succès avec plus d’1 million de joueurs, il faudra forcément que les joueurs potentiels puissent jouer à ce jeu avec leurs PC. Pour cela ce jeu doit être accessible avec une configuration minimale accessible par un certain pourcentage des joueurs potentiels.
Ces tests permettent donc également de déterminer les configurations minimales et conseillées pour l’utilisation d’une application.
Enfin, il ne faut pas oublier que les ordinateurs, smartphones… font tourner de plus en plus d’applications en parallèle, dès lors utiliser une trop grande partie des ressources devient vite rédhibitoire.
- Les tests de capacité
Les tests de capacité, quant à eux vise à connaitre les limites maximales d’un logiciel. Combien d’utilisateurs en simultanée, combien de requêtes, quel volume d’information…
Quel est l’intérêt d’une application de chat si le logiciel ne peut gérer qu’une seule communication ? Quel est l’intérêt d’une application de e-commerce si l’on ne peut pas proposer plus de 10 produits ?
Les tests de capacités sont là pour déterminer ces limites… Et idéalement, quand elles existent, vérifier que les spécifications sont bien atteintes !
Source ISO – 25 010
Syllabus ISTQB fondation 2018 Lien anglais car non disponible en français à la date d’écriture
Pensez à rejoindre le groupe Le métier du test si le test vous intéresse !
N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances
Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles
3 Responses
comment utiliser le type test de performance manuellement sur un site web
Il y a des outils dédiés aux tests de performances.
En open source il y a par exemple: JMeter et Gatling
En éditeur: Octoperf, Neoload, loadrunner…