Tests - falcoda/Projet-DevWeb-III GitHub Wiki

Tests unitaires

Définition

Tout d'abord le test unitaire est le premier test à effectuer sur son produit car il va tester séparément chaque "portion"(ou unité). Ainsi il sera possible de détecter les petites erreurs locales et il est important que chaque unité soit testée scrupuleusement. Pour réaliser les différents tests sur ces unités , on y définit des valeurs d'entrée et de sortie du test et si les valeurs prévues ne sont pas les mêmes que celles qu'on reçoit l'erreur est détectée et corrigée. Et donc via le test unitaire, on s'assure que l'unité testée répond aux spécifications fonctionnelles et qu'elle fonctionne correctement en toute circonstance.

Pas encore implémentés

Tests d'intégration

Définition

Tout d'abord le test d'intégration est la suite logique au test unitaire car après avoir tester les unités individuellement, il va naturellement détecté les erreurs qui n'ont pas été détectées par les tests unitaires. On va principalement vérifier l'aspect fonctionnel, les performances et la fiabilité du logiciel. Et donc la grande différence avec les tests unitaires est que nous allons tester le produit au complet et non plus chaque unité du produit séparément. C'est très important de tester si le prototype assemblé est fonctionnel et s'il répond aux attentes du client. Il existe plusieurs méthodes pour les tests d'intégration, quelques exemples : Top-down, Bottom-up, Sandwich, ..

Nous utilisons Postman afin de tester notre API

test Postman

Lien postman

localhost:80/all-commande

Dans cette page, nous testons :

  • Si la réponse est du JSON
  • Si le statut de la réponse est valide
  • Si la réponse contiant une commande valide

localhost:80/liste-utilisateur

Dans cette page, nous testons :

  • Si la réponse est du JSON
  • Si le statut de la réponse est valide
  • Si la réponse contiant un utilisateur corentda@hotmail.fr

localhost:80/nombre-materiel

Dans cette page, nous testons :

  • Si le matériel a été modifé
  • Si le statut de la réponse est valide

localhost:80/send-mail

Dans cette page, nous testons :

  • Si le mail a été envoyé
  • Si le statut de la réponse est valide

localhost:80/materiels/json

Dans cette page, nous testons :

  • Si la réponse est du JSON
  • Si le statut de la réponse est valide
  • Si la réponse contient un mth30

Test end 2 end

définition

Le test end 2 end est une technique qui va tester l'ensemble du produit du début à la fin sans rien oublier. Il permet de vérifier que toutes les pièces assemblées sont fonctionnelles du point de vue utilisateur. L'objectif principal ici est de tester si l'expérience de l'utilisateur se déroule sans problème et donc la technique la plus répandue est de simuler le scénario de l'utilisateur qui utilise le produit fini pour voir si il ne rencontre aucun soucis. C'est donc le test final du projet et la grande différence avec le test d'intégration c'est que l'ont rajoute une couche en se mettant dans la peau de l'utilisateur. Si le test est réussi, le produit est fini et est prêt à être livré pour qu'il soit mis en ligne.

Test page matériel

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si le react arrive bien dans la page lors du chargement
  • Si le matériel est bien ajouté
  • Si la fonction de tri fonctionne correctment

Test page contact

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si la page contact contient bien tout les formulaires
  • Si la page contient un bouton submit
  • Si le formulaire s'envoit bien et que l'on reçoit bien une alerte indiquant que le message a bien été envoyé

Test page devis

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si la page contient bien le formulaire
  • Les boutons et fonctionnalités associés fonctionnent
  • Le devis est bien généré en fonction des choix du client
  • Les prix et matériel sont bel et bien prit de la base de donnée

Test page profil

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si la page profil contient bien tout les deux boutons (panier et commande)
  • Si lorsque l'on appuie sur le bouton "commande" cela affiche bien les commandes de l'utilisateur
  • Si l'on appuie sur le bouton détail présent dans l'onglet commande cela affiche bien le détail de la commande
  • Si lorsque l'on appuie sur le bouton "panier" cela affiche bien le panier de l'utilisateur
  • Si la connexion fonctionne bien

Test page authentification

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si la page authentification contient bien tout les formulaires
  • Si la page contient un bouton submit
  • Si la connexion fonctionne bien

Test page accueil

Dans cette page, nous testons :

  • Si la navbar est bien présente
  • Si la page accueil contient bien tout ses éléments