6. Testing - GonoGoat/projetIntegrationGrp6 GitHub Wiki

Introduction

Afin de développer au mieux notre application, ainsi que de garantir son fonctionnement tout au long du développement du projet, nous avons établis des tests vérifiant l'ensemble de notre code, sur autant de point que possible. Les différents types de test effectués vous seront ainsi ici présentés.

Tests

Afin de lancer les tests par vous-mêmes, nous vous invitons d'abord à consulter le manuel d'installation du projet.

Restez donc bien dans le dossier ReactNative du projet !

Tests unitaire

Description

Nos tests unitaires avaient comme objectif de tester de manière très rapide des fonctions clés de notre projet. Nous avons donc décidé de mettre toutes nos fonctions utilitaires (c'est-à-dire uniquement celles effectuant du traitement, du calcul de données) dans des fichiers séparés de nos composants et de porter ces tests sur ces fichiers uniquement. Notre objectif ici était d'atteindre une couverture de code de 100%.

Exécution et résultat

Langages utilisés : Jest et Enzyme

Commande d'exécution : npm test utils

Code Coverage - Test unitaire

Tests d'intégration

Description

Nos tests d'intégration avaient comme objectif de tester les fonctionnalités de notre projet : notre API ainsi que l'application mobile. Pour cela, nous avons simulé des actions d'utilisateurs pour vérifier que le code y réagit correctement. Notre objectif ici était d'atteindre une couverture de code générale d'environ 70%.

Exécution et résultat

Application mobile

Langages utilisés : Jest et Enzyme

Commande d'exécution : npm test test.js

Code coverage : integration test


API

Langage utilisé : Postman

Exécution : Importer la collection Tests API (dans le dossier Node.js) dans Postman

Test postman

Tests End-to-End

Description

Nos tests end-to-end avaient comme objectif de simuler différents scénarios pouvant arriver lors de l'utilisation de l'application mobile, et ainsi, de tester si tout se passe comme prévu pour l'utilisateur. Notre objectif ici était de faire intervenir plus de la moitié de nos composants dans nos différents scénarios.

Liste des composants testés Liste des composants testés

Exécution et résultat

Langages utilisés : Cypress

Commande d'exécution : npx cypress open (puis sélectionnez le fichier correspondant au scénario voulu)

Test e2e