Tests d'applications web : Comment tester un site web ? Types

โšก Rรฉsumรฉ intelligent

Les tests d'applications web vรฉrifient la fonctionnalitรฉ, l'ergonomie, l'interface, la base de donnรฉes, la compatibilitรฉ, les performances, la sรฉcuritรฉ et l'expรฉrience utilisateur d'un site web avant sa mise en ligne, afin que les dรฉfauts apparaissent en environnement de test plutรดt que devant les utilisateurs payants.

  • ๐Ÿงฑ Connaรฎtre l'architecture d'abord : Les applications monopages, multipages et progressives concentrent les risques ร  diffรฉrents niveaux.
  • ๐Ÿ”— Commencez par la fonctionnalitรฉ : Dรฉmontrer que chaque lien, formulaire, cookie et flux de travail de bout en bout fonctionne correctement, y compris les chemins nรฉgatifs.
  • ๏ธ Associer les navigateurs aux systรจmes d'exploitation : Changements de rendu dans Chrome, Firefoxsafari, Windows, macOSet Linux, afin de couvrir votre vรฉritable mix de trafic.
  • | Mesurer en charge, et non au repos : Temps de rรฉponse de rรฉfรฉrence en conditions de trafic normal, puis test de la rรฉsistance au-delร  du pic pour identifier le point de rupture.
  • (I.e. Combler les failles de sรฉcuritรฉ au plus tรดt : Bloquer l'accรจs non autorisรฉ aux pages, faire expirer les sessions inactives, imposer le chiffrement des pages et rechercher les failles d'injection.
  • (I.e. Automatisez les tรขches rรฉpรฉtitives, explorez le reste : Suite de tests de rรฉgression de scripts et de tests multi-navigateurs, rรฉservez les testeurs au jugement d'utilisabilitรฉ.

Avant de dรฉtailler les diffรฉrents types de tests web, dรฉfinissons rapidement ce qu'est un test web et voyons oรน il s'intรจgre dans le cycle de livraison.

Qu'est-ce que le test d'applications Web ?

Test d'applications WebLes tests d'application web consistent ร  vรฉrifier votre application ou site web afin de dรฉtecter d'รฉventuels bogues avant sa mise en ligne et son accessibilitรฉ au grand public. Ces tests vรฉrifient la fonctionnalitรฉ, l'ergonomie, la sรฉcuritรฉ, la compatibilitรฉ et les performances de l'application ou du site web.

Durant cette รฉtape, on vรฉrifie des aspects tels que la sรฉcuritรฉ de l'application web, le fonctionnement du site, son accessibilitรฉ aux personnes handicapรฉes et aux utilisateurs rรฉguliers, ainsi que sa capacitรฉ ร  gรฉrer le trafic.

Un site web n'est pas un simple programme. C'est un ensemble de technologies : HTML, CSS etโ€ฆ JavaScript dans le navigateur, plus Apis et les bases de donnรฉes sur le serveur. Une couche qui fonctionne correctement seule peut nรฉanmoins รฉchouer une fois qu'elle communique avec sa voisine ; les tests web nรฉcessitent donc des techniques complรฉmentaires.

Types d'applications Web que vous devez tester

Avant de choisir les techniques, identifiez l'architecture sous-jacente. La structure dรฉtermine oรน se concentrent les dรฉfauts et comment rรฉpartir les efforts entre le client et le serveur.

Architecture Comment รงa se comporte Quโ€™est-ce que cela signifie pour les tests ?
Demande d'une seule page (SPA) Se charge une seule fois, puis met ร  jour l'affichage sans rechargement complet de la page. Gmail Cela fonctionne de cette faรงon. La majeure partie du code logique est exรฉcutรฉe dans le navigateur : concentrez-vous sur Javaร‰tat du script, rendu dynamique et sessions cรดtรฉ client.
Application multipage (MPA) De nombreuses pages ont รฉtรฉ consultรฉes par un itinรฉraire diffรฉrent. URLs, rendu cรดtรฉ serveur. Courant pour les sites de commerce รฉlectronique et d'actualitรฉs. Les chemins de navigation se multiplient : testez chaque route, formulaire et redirection de bout en bout.
Application Web progressive (PWA) Fonctionne comme une application native utilisant des service workers, un manifeste et une interface d'application. Ajout du comportement hors ligne, des caches obsolรจtes, des notifications push et des invites d'installation.

La plupart des produits combinent ces motifs. Identifiez celui auquel vous avez affaire, puis appliquez les huit techniques ci-dessous.

Comment tester une application Web ou un site Web

En gรฉnie logiciel, les types/techniques de tests suivants peuvent รชtre effectuรฉs en fonction de vos besoins en matiรจre de tests Web.

Chaque technique peut รชtre exรฉcutรฉe manuellement ou par script, et ce choix influe davantage sur le coรปt que sur la couverture.

Aspect Test manuel L'automatisation des tests
Meilleur adaptรฉ ร  Convivialitรฉ et exploratoire chรจques Rรฉgression, multiplateforme, tests de charge
Vitesse sur les courses rรฉpรฉtรฉes Lent ; l'effort se rรฉpรจte ร  chaque cycle Rapide ; la suite est rediffusรฉe ร  la demande
Profil des coรปts Faible au dรฉpart, augmente ร  chaque sortie Coรปt initial plus รฉlevรฉ, puis maintenance du script

1. Test de fonctionnalitรฉ d'un site Web

Test de fonctionnalitรฉ d'un site Web est un processus qui comprend plusieurs paramรจtres de test tels que l'interface utilisateur, les API, les tests de base de donnรฉes, les tests de sรฉcuritรฉ, les tests client et serveur et les fonctionnalitรฉs de base du site Web. Les tests fonctionnels sont trรจs pratiques et permettent aux utilisateurs d'effectuer des tests manuels et automatisรฉs. Elle est rรฉalisรฉe pour tester les fonctionnalitรฉs de chaque fonctionnalitรฉ du site Internet.

Les activitรฉs de test Web comprennent :

Test tous Gauche dans vos pages Web fonctionnent correctement et assurez-vous quโ€™il nโ€™y a pas de liens brisรฉs. Les liens ร  vรฉrifier incluront โ€“

  • Liens sortants
  • Liens internes
  • Anchor Liens
  • MailVers les liens

Formulaires d'essai fonctionnent comme prรฉvu. Cela comprendra-

  • Les vรฉrifications de script sur le formulaire fonctionnent comme prรฉvu. Par exemple, si un utilisateur ne remplit pas un champ obligatoire dans un formulaire, un message d'erreur s'affiche.
  • Vรฉrifiez que les valeurs par dรฉfaut sont renseignรฉes
  • Une fois soumises, les donnรฉes des formulaires sont soumises ร  une base de donnรฉes en direct ou sont liรฉes ร  une adresse e-mail fonctionnelle.
  • Les formulaires sont formatรฉs de maniรจre optimale pour une meilleure lisibilitรฉ

Tester les cookies fonctionnent comme prรฉvu. Les cookies sont de petits fichiers utilisรฉs par les sites Web pour mรฉmoriser principalement les sessions utilisateur actives afin que vous n'ayez pas besoin de vous connecter ร  chaque fois que vous visitez un site Web. Les tests de cookies comprendront

  • Les cookies de test (sessions) sont supprimรฉs soit lorsque le cache est vidรฉ, soit lorsqu'ils atteignent leur expiration.
  • Supprimez les cookies (sessions) et testez que les identifiants de connexion sont demandรฉs lors de votre prochaine visite sur le site.

Testez HTML et CSS pour garantir que les moteurs de recherche peuvent explorer facilement votre site. Cela comprendra

  • Vรฉrification des erreurs de syntaxe
  • Readable Schรฉmas de couleurs
  • Conformitรฉ aux normes. Assurez-vous que les normes telles que W3C, OASIS, IETF, ISO, ECMA ou WS-I sont respectรฉes.

Tester le flux de travail de l'entrepriseโ€“ Cela comprendra

  • Testez vos scรฉnarios de flux de travail/affaires de bout en bout qui guident l'utilisateur ร  travers une sรฉrie de pages Web ร  complรฉter.
  • Testez รฉgalement les scรฉnarios nรฉgatifs, par exemple lorsqu'un utilisateur exรฉcute une รฉtape inattendue, un message d'erreur ou une aide appropriรฉe s'affiche dans votre application Web.

Outils pouvant รชtre utilisรฉs: QTP , IBM Rationnel , Selenium

2. Test d'utilisabilitรฉ

Tests d'utilisabilitรฉ est dรฉsormais devenu un รฉlรฉment essentiel de tout projet Web. ร‡a peut รชtre rรฉalisรฉ par des testeurs comme toi ou un petit groupe de discussion similaire au public cible de lโ€™application Web.

Test le site Navigation:

  • Les menus, boutons ou liens vers diffรฉrentes pages de votre site doivent รชtre facilement visibles et cohรฉrents sur toutes les pages Web.

Test le Contenu:

  • Le contenu doit รชtre lisible, sans fautes dโ€™orthographe ou de grammaire.
  • Les images, si elles sont prรฉsentes, doivent contenir un texte ยซ alt ยป

Outils pouvant รชtre utilisรฉs: Marque ร  la craie, Contenusquare, et Clixpy

3. Tests d'interface

Une fois que les fonctionnalitรฉs et l'ergonomie sont validรฉes, vรฉrifiez que les diffรฉrentes couches sous-jacentes communiquent entre elles. Trois domaines doivent รชtre testรฉs : serveur d'application, serveur web et serveur de base de donnรฉes.

  • Application: Les demandes de test sont envoyรฉes correctement ร  la base de donnรฉes et la sortie cรดtรฉ client s'affiche correctement. Les รฉventuelles erreurs doivent รชtre dรฉtectรฉes par l'application et doivent รชtre affichรฉes uniquement ร  l'administrateur et non ร  l'utilisateur final.
  • Web Server: Le serveur Web de test gรจre toutes les demandes d'application sans aucun dรฉni de service.
  • Serveur de base de donnรฉes: Assurez-vous que les requรชtes envoyรฉes ร  la base de donnรฉes donnent les rรฉsultats attendus.

Tester la rรฉponse du systรจme quand connexion entre les trois couches (Application, Web et base de donnรฉes) ne peut รชtre รฉtabli et un message appropriรฉ est affichรฉ ร  l'utilisateur final.

Outils pouvant รชtre utilisรฉs: Ranorex

4. Test de base de donnรฉes

La base de donnรฉes est un composant essentiel de votre application Web et il faut insister pour la tester de maniรจre approfondie. Les activitรฉs de test comprendront-

  • Testez si des erreurs s'affichent lors de l'exรฉcution des requรชtes
  • Centres de donnรฉes Integrity est conservรฉ lors de la crรฉation, de la mise ร  jour ou de la suppression de donnรฉes dans la base de donnรฉes.
  • Vรฉrifiez le temps de rรฉponse des requรชtes et ajustez-les si nรฉcessaire.
  • Les donnรฉes de test extraites de votre base de donnรฉes sont affichรฉes avec prรฉcision dans votre application Web

Outils pouvant รชtre utilisรฉs: QTP, Selenium

5. Test de compatibilitรฉ

Les tests de compatibilitรฉ garantissent que votre application web s'affiche et fonctionne correctement sur diffรฉrents appareils. Cela comprend :

Test de compatibilitรฉ du navigateur:Le mรชme site Web s'affichera diffรฉremment dans diffรฉrents navigateurs. Vous devez vรฉrifier si votre application Web s'affiche correctement dans tous les navigateurs, JavaLe script, AJAX et l'authentification fonctionnent correctement. Vous pouvez รฉgalement vรฉrifier Mobile Compatibilitรฉ du navigateur.

Le rendu des รฉlรฉments Web tels que les boutons, les champs de texte, etc. change avec les changements de Operating systรจme. Assurez-vous que votre site Web fonctionne correctement pour diverses combinaisons de Operades systรจmes tels que Windows, Linux, Mac et navigateurs tels que Firefox, Internet Explorer, Safari, etc.

Outils pouvant รชtre utilisรฉs: Dynatrace

6. Tests de performances

Cela permettra de garantir le bon fonctionnement de votre site quelles que soient les charges. Les tests comprendront notamment :

  • Temps de rรฉponse des applications de sites Web ร  diffรฉrentes vitesses de connexion
  • Testez la charge de votre application Web pour dรฉterminer son comportement sous des charges normales et maximales
  • Testez votre site Web pour dรฉterminer son point de rupture lorsqu'il est poussรฉ au-delร  des charges normales aux heures de pointe.
  • Testez si un crash se produit en raison d'un pic de charge, comment le site se remet-il d'un tel รฉvรฉnement
  • Assurez-vous que les techniques d'optimisation telles que la compression gzip, le cache cรดtรฉ navigateur et serveur sont activรฉes pour rรฉduire les temps de chargement.

Outils pouvant รชtre utilisรฉs: Loadrunner, JMeter

7. Tests de sรฉcuritรฉ

Test de sรฉcuritรฉ est vital pour les sites Web de commerce รฉlectronique qui stockent des informations client sensibles telles que les cartes de crรฉdit. Les activitรฉs de test comprendront-

  • Tester l'accรจs non autorisรฉ aux pages sรฉcurisรฉes ne doit pas รชtre autorisรฉ
  • Les fichiers restreints ne doivent pas รชtre tรฉlรฉchargeables sans un accรจs appropriรฉ
  • Les sessions de contrรดle sont automatiquement supprimรฉes aprรจs une inactivitรฉ prolongรฉe de l'utilisateur
  • Lors de l'utilisation de certificats SSL, le site Web doit รชtre redirigรฉ vers des pages SSL cryptรฉes.

Intruder

Intruder est un puissant scanner de vulnรฉrabilitรฉs qui vous aidera ร  dรฉcouvrir les nombreuses faiblesses cachรฉes dans vos applications Web et votre infrastructure sous-jacente. Offrant des contrรดles de sรฉcuritรฉ de pointe, une surveillance continue et une plateforme facile ร  utiliser, Intruder protรจge les entreprises de toutes tailles contre les pirates informatiques.

Intruder

Fonctionnalitรฉ

  • Couverture des menaces de premier ordre avec plus de 10,000 contrรดles de sรฉcuritรฉ
  • Vรฉrifie les faiblesses de configuration, les correctifs manquants, les faiblesses des applications (telles que l'injection SQL et les scripts intersites) et bien plus encore.
  • Analyse automatique et priorisation des rรฉsultats d'analyse
  • Interface intuitive, rapide ร  configurer et ร  exรฉcuter vos premiรจres analyses
  • Surveillance proactive de la sรฉcuritรฉ pour les derniรจres vulnรฉrabilitรฉs
  • AWS, Azure et Google Cloud connecteurs
  • Intรฉgration d'API avec votre pipeline CI/CD

Visiter Intruder >>

8. Tests de foule

Vous sรฉlectionnerez un grand nombre de personnes (une foule) pour exรฉcuter des tests qui, autrement, auraient รฉtรฉ rรฉalisรฉs par une petite รฉquipe interne. Les tests participatifs constituent un concept intรฉressant et รฉmergent qui permet de dรฉceler de nombreux dรฉfauts passรฉs inaperรงus.

Outils pouvant รชtre utilisรฉs: Plateforme de test de foule

Processus de test d'application Web : รฉtape par รฉtape

Ces huit techniques vous indiquent ce qu'il faut vรฉrifier. La procรฉdure ci-dessous vous indique quand les appliquer.

  1. Recueillir et clarifier les exigences. Dรฉcrivez les fonctionnalitรฉs et le comportement attendus de l'application. Des exigences ambiguรซs engendrent des attentes impossibles ร  tester ; il est donc essentiel de les clarifier en premier lieu. Cette รฉtape ancre les tests web dans un cadre plus global. cycle de vie des tests logiciels.
  2. Rรฉdigez le plan de test. Dรฉterminez les techniques applicables, les personnes chargรฉes de leur mise en ล“uvre, les outils nรฉcessaires et le calendrier. Ce plan constitue votre feuille de route et votre estimation.
  3. ร‰laborer des cas de test. Transformez chaque exigence en รฉtapes concrรจtes avec des rรฉsultats attendus, en couvrant ร  la fois le scรฉnario idรฉal et les scรฉnarios nรฉgatifs que les utilisateurs dรฉclenchent accidentellement.
  4. Configurer l'environnement de test. Production miroir aussi fidรจle que le budget le permet : mรชmes paires navigateur/systรจme dโ€™exploitation, volumes de donnรฉes comparables, vitesses de rรฉseau rรฉalistes.
  5. Exรฉcutez les tests. Exรฉcutez les tests, enregistrez les rรฉsultats rรฉels par rapport aux rรฉsultats attendus et capturez des captures d'รฉcran, la sortie de la console et les journaux du serveur tant que la dรฉfaillance est encore reproductible.
  6. Signaler et track dรฉfauts. Consignez chaque incident avec les รฉtapes de reproduction et une prioritรฉ, puis effectuez un nouveau test aprรจs la correction et vรฉrifiez qu'aucun autre รฉlรฉment ร  proximitรฉ n'a รฉtรฉ endommagรฉ.
  7. Boucler la boucle. Rรฉdigez un rรฉsumรฉ des tests couvrant ce qui a รฉtรฉ testรฉ, ce qui a รฉtรฉ constatรฉ, ce qui reste ร  faire et ce qui doit รชtre amรฉliorรฉ, puis validez la mise en production.

โš ๏ธ Planifiez le calendrier, pas seulement les tests : Les tests web sont fastidieux, et la pression des dรฉlais est le premier obstacle rencontrรฉ, suivie des modifications de code rรฉpรฉtรฉes qui rendent le travail dรฉjร  accompli caduc. Dรฉfinissez chaque tรขche ร  l'รฉtape 2 et รฉlaborez un organigramme ร  partir de celle-ci.

FAQ

Les tests web ciblent les combinaisons de navigateurs et de systรจmes d'exploitation, le rendu et les allers-retours avec le serveur. Test mobile ajoute des informations sur le matรฉriel de l'appareil, les chemins d'installation et de mise ร  niveau, les interruptions telles que les appels, la consommation de la batterie, les gestes et les rรจgles de l'App Store.

L'incohรฉrence des navigateurs, la diversitรฉ des appareils et des รฉcrans, les pages dynamiques qui s'adaptent ร  chaque utilisateur, les mises ร  jour frรฉquentes qui rรฉactivent d'anciens dรฉfauts et les dรฉlais serrรฉs sont autant de facteurs qui rendent le pรฉrimรจtre du projet gรฉrable. Prioriser en fonction des donnรฉes de trafic rรฉelles et automatiser les tests de rรฉgression permet de maรฎtriser le pรฉrimรจtre.

L'IA gรฉnรจre des cas de test ร  partir des exigences, rรฉpare automatiquement les localisateurs lorsque l'interface change, priorise les suites de tests ร  exรฉcuter aprรจs une validation et signale les diffรฉrences visuelles. Outils de test d'IA Appliquez cela aux tests de rรฉgression et de compatibilitรฉ multi-navigateurs.

Non. Outils de test d'IA gรฉnรฉrative Ces outils accรฉlรจrent la rรฉdaction de scripts et le tri des anomalies, mais ne permettent pas d'รฉvaluer la clartรฉ d'un flux de travail ni de dรฉterminer ce qui importe aux utilisateurs. L'apprรฉciation de l'utilisabilitรฉ et le jugement exploratoire restent du ressort des testeurs humains.

Oui. Test d'accessibilitรฉ Ce module s'intรจgre aux travaux d'ergonomie et vรฉrifie la navigation au clavier, la sortie du lecteur d'รฉcran, le contraste des couleurs et le texte alternatif conformรฉment aux WCAG. Dans de nombreux pays, il s'agit d'une obligation lรฉgale, et non d'une option.

Rรฉsumez cet article avec :