Il est d’usage de dessiner une frontière entre deux types de tests. D’un côté, ceux réalisés tout en amont pendant les développements. De l’autre, les tests d’intégration réalisés en bout de chaîne lorsque l’application complète est développée, juste avant de la mettre en production. C’est le moment de répondre à des questions fondamentales : lorsqu’elles interagissent entre elles, toutes les parties du logiciel développé répondent-elles bien aux fonctionnalités attendues ? Et donnent-elles les résultats souhaités ?
Cette typologie est toujours d’actualité mais restrictive, car elle est associée à l’aspect purement fonctionnel de l’application. Il est plus pertinent d’associer les tests à réaliser au type d’application développée, parmi lesquelles :
- Le site web éditorial
- Le site e-commerce
- L’application web
- Le progiciel web
- L’application mobile
Le site web éditorial
Qu’est-ce qu’un site web éditorial ?
Un site web éditorial n’a pour seul objectif que de fournir du contenu à l’internaute. Il peut intervenir en complément d’une plateforme e-commerce, d’un interface utilisateur… ou exister de façon indépendante. Il peut aussi posséder des fonctionnalités spécifiques. Par exemple la connexion à un intranet, un réseau social, ou bien le téléchargement de documents.
Les tests préconisés
Une stratégie de supervision, composée de tests en continu, permet de s’assurer que les internautes pourront lire ou collecter de l’information à n’importe quel moment. Que ce soit pour le site web éditorial d’une association, d’une entreprise ou d’un service public.
Pour les sites web éditoriaux, deux types de tests sont donc incontournables :
- Les tests de supervision individuels. Ils permettent de vérifier de façon récurrente qu’un internaute peut accéder à une ou plusieurs fonctions du site : connexion à un intranet, téléchargement d’un document, etc. Ces tests se réalisent en production, toutes les 5 minutes, tous les quarts d’heure ou toutes les heures par exemple.
- Les tests de supervision en charge. Ils sont réalisés de façon plus espacée, par exemple tous les mois. Ils visent à vérifier qu’une fonction reste accessible malgré un gros volume d’internautes qui cherche à l’utiliser. Toujours en production, le test reproduira à l’identique de la réalité un grand nombre de connexions à la fonctionnalité.
Le site e-commerce
Qu’est-ce qu’un site e-commerce ?
Le site e-commerce, ou site marchand, permet à un internaute d’acheter en ligne et de façon sécurisée un bien ou un service. Un bon site de e-commerce assure à son acheteur d’avoir pu sélectionner, visualiser, déposer dans son panier, valider et payer le produit qu’il souhaite. Et ce, dans des conditions optimales.
Les tests préconisés
L’impératif est une stratégie de tests de montée en charge. L’idée est de reproduire à l’identique de la réalité un grand nombre d’internautes qui se connectent en même temps au site.
Ces campagnes doivent impérativement être mises en place avant chaque événement majeur qui ponctue la vie du site. Certains moments sont particulièrement à risque pour la plupart des sites marchands : les soldes d’été et d’hiver notamment. Mais chaque secteur d’activité a aussi ses spécificités. Par exemple, un site de jardinerie devra réaliser des tests de montée en charge à l’approche de l’été, car dans son domaine cette période génère de l’affluence.
Cette stratégie peut éviter de grosses déconvenues, parmi lesquelles une importante perte de business. Au vu des investissements mis en place, un site web inaccessible car saturé est toujours un événement catastrophique.
Il est aussi très utile de mettre en place des tests de supervision applicative individuels. La clé de voûte d’un site de e-commerce est bien sûr son tunnel d’achat. Un test de supervision applicative permettra de s’assurer, toutes les 5 ou 10 minutes, que cette fonctionnalité essentielle à la vie du site est accessible.
L’application web
Qu’est-ce qu’une application web ?
Une application web est un logiciel applicatif hébergé sur un serveur et accessible via un navigateur web. Contrairement à un logiciel traditionnel, l’utilisateur d’une application web n’a rien besoin d’installer sur son ordinateur. (Définition d’ideematic.com)
Quels sont les tests préconisés ?
Un type de tests est incontournable pour les applications web : les tests de non régression. En pré-production, ces tests s’assureront que le fonctionnement de l’application telle qu’elle existait avant les correctifs est toujours fiable. L’objectif : vérifier qu’aucun effort de bord ou aucune régression n’a pu être intégrée à la version qui s’apprête à être mise en ligne.
Deux autres types de tests sont aussi préconisés :
- Avant chaque nouvelle mise en production, des tests de montée en charge. On s’assurera par là qu’avec un volume significatif d’utilisateurs qui utilise la même fonction, l’application garde un niveau de performance toujours conforme.
- Les tests de supervision applicative individuels sont aussi très utiles. En production, Ils permettent de s’assurer que tout ou partie des fonctions de l’application fonctionnent dans les conditions de qualité, de disponibilité et d’accessibilité requises.
Le progiciel web
Qu’est-ce qu’un progiciel web ?
Le mot progiciel est une contraction de « produit » et de « logiciel ». Il est fourni par un éditeur et vise à aider à effectuer des tâches spécifiques à un domaine. Il ne vise donc pas le grand public, mais les professionnels d’un secteur donné. L’application est créée, mais aussi paramétrée et customisée pour chaque utilisateur. Fréquemment un progiciel est « paramétrable » ou « customisable » ce qui complexifie les tests qui doivent y être réalisés.
Quels sont les tests préconisés ?
Pour un progiciel, les tests les plus pertinents à réaliser sont les tests de non régression, en pré-production. Ils s’assurent que les fonctions disponibles avant la mise en production le seront toujours à son issue.
Les tests fonctionnels, à chaque nouvelle mise en production, permettent eux de vérifier que la personnalisation du progiciel (paramétrage et customisation) fonctionne parfaitement. Ils sont réalisés en production, pour un client donné.
L’application mobile
Qu’est-ce qu’une application mobile ?
Une application mobile est un programme téléchargeable de façon gratuite ou payante et exécutable à partir du système d’exploitation d’un smartphone ou d’une tablette. L’application mobile est extrêmement dépendante du support, ou device, sur lequel elle va être utilisée.
Quels sont les tests préconisés ?
Le test incontournable pour une application mobile est le test de non régression. Dans l’idéal, il reproduira à l’identique de la réalité le parcours d’un mobinaute qui utilise une fonction, afin de s’assurer de son accessibilité. Ce test pourra être réalisé sur de véritables téléphones, parmi les modèles les plus fréquemment utilisés parmi les utilisateurs de l’application. A minima, des tests réalisés sur des émulateurs iOs ou Android peuvent aussi être utiles, mais moins exacts dans leurs résultats.
Il peut aussi être profitable de mettre en place un test de supervision applicative : vérifier qu’à tout instant, les fonctionnalités qu’on met à disposition sont bien disponibles.
Il est donc très important de définir sa stratégie de tests en fonction de la typologie du logiciel à tester et des fonctionnalités qui doivent être vérifiées. Bien souvent et malheureusement, les entreprises qui mettent en œuvre une vraie stratégie de qualité logiciel sont celles qui ont subi des déconvenues dans le passé. Pourtant, telle une sorte d’assurance à laquelle on souscrit, réaliser des tests permet de se prémunir contre d’importants dysfonctionnements. Et comme toujours : mieux vaut prévenir que guérir.
Christian Sayegh – CloudNetCare