Algorithme - Phase de tests

Phase de tests - sommaire

Tests sur les calculs


I) Enregistrement, récupération et modification des données


Cette première partie de la phase de test est importante car elle va vérifier la fonctionnalité de ce qui nous permettra ultérieurement d'enregistrer notre base de donnée de rues et de pouvoir la manipuler pour les calculs. Plusieurs points importants ont été décelés pour chaque partie :


 

I-1) Enregistrement des données

Les points importants dans l'enregistrement des données sont :

  • Ne pas écraser une ligne déjà existante
  • Enregistrement d'une rue déjà enregistrée
  • Vérifier que toutes les données sont bien enregistrées et au bon endroit
  • Vérification des obstacles
  • Modification de la liste déroulante

 

- Ne pas écraser une ligne déjà existante

Une vérification rapide permet de voir que l'on crée bien une nouvelle ligne, sans en effacer une autre. Il suffit pour cela de comparer le nombre d'entrées dans la liste, et si celui ci a bien accru d'une unité, vérifier la présence de la nouvelle ligne de la rue avec ses données.

Figure 1 : Fonctionnement de l'enregistrement d'une rue

Haut de page

 

- Enregistrement d'une rue déjà enregistrée

Pour vérifier qu'une rue n'est pas déjà enregistrée, on compare le nom de la rue prête pour l'enregistrement avec les rues déjà enregistrées. Cette méthode peut poser problème si quelqu'un rentre par exemple "Wilson" et "Place Wilson" car le programme les reconnaîtra comme deux rues différentes.

Figure 2 : Enregistrement d'une rue déjà existante

 

Pour plus de liberté, si une rue est retrouvée dans la liste, l'utilisateur a la possibilité d'écraser les données précédemment enregistrées par les nouvelles.

Haut de page

 

- Vérifier que toutes les données sont bien entrées

Pour vérifier que les données sont toutes enregistrées et au bon endroit, il suffit de créer une nouvelle rue avec des valeurs différentes (de 1 à n) pour chaque entrée. Nous allons aussi incorporer les obstacles (qui sont sur l'autre page) et le nombre de piétons de référence.

Figure 3 :Vérification de l'enregistrement des données et de leur placement

 

Pour enregistrer une nouvelle rue, il faut impérativement que le nom, la longueur et la largeur soient entrés. Dans le cas contraire un message d'erreur apparaît. Pour les lampadaires, un des deux côté peut être égal à 0, mais pas les deux, sinon le message d'erreur apparaît.

Nous avons pu ainsi enregistrer des rues ayant des lampadaires des deux côtés ou que d'un côté (au choix au cas où l'utilisateur ait besoin d'orienter ses rues)

Haut de page

 

- Vérification des obstacles

La page "Obstacles" permet à l'utilisateur de rentrer les données sur les obstacles présents dans la rue.

La validation de ces entrées nécessite plusieurs vérifications :

Tout d'abord pour les obstacles nécessitant plusieurs entrées (rangées d'arbres, barrières et places de parking), lorsqu'un des côtés a commencé à être rempli, il faut que les autres données correspondantes soient aussi remplies. Un test est réalisé pour chacun de ces type d'obstacle, et pour chaque côté, soit 6 tests.

Figure 4 : Entrée de données incomplète

 

Ensuite il reste à vérifier qu'il n'y a pas de cases cochées alors qu'aucune valeur n'est entrée. Ce test est réalisé pour chaque type d'obstacle, soit 6 tests.

Figure 5 : Absence de données pour une case cochée

Haut de page

 

- Modification de la liste déroulante

La liste déroulante doit changer de taille à chaque nouvelle insertion. Nous devons donc mettre à jour la nouvelle liste de nom de rues et relier cette liste à la liste déroulante.

Pour réaliser cela, nous avons nommé la liste des rues "Liste_Rue" qui est redéfinie à chaque mise à jour de la liste, afin que les modifications de plages soient mieux comprises par la liste déroulante.

Lors de l'enregistrement, la rue est créée en haut de la liste des rues, juste en dessous de la ligne "manuel". Ainsi il faut bien faire attention à l'ordre d'enregistrement des rues car la dernière enregistrée se retrouve en première position dans la liste. Malheureusement le seul moyen de modifier cet ordre est de supprimer une rue qui ne serait pas à sa place en bas de la liste, et de la réenregistrer. Ainsi elle se retrouvera en haut de la liste.

Le mieux pour réaliser cette manipulation est d'effacer le nom de la rue dans la colonne des données, ce qui aura pour effet de vous passer en "manuel" sans pour autant effacer les autres données (obstacles compris). Il vous suffit de remettre le nom de la rue avec une petite variante (enlever ou rajouter "rue"/"avenue"...), enregistrer, puis supprimer le doublon ainsi créé.

Vous pouvez ensuite si vous le souhaitez reprendre votre rue (qui est maintenant au début de la liste) et remettre l'ancien nom.

Haut de page

 

 

I-2) Récupération des données

 

Le but de la liste déroulante est de récupérer facilement les données d'une rue déjà enregistrée. Cette liste se base sur la liste des rues et est liée à sa taille. Il fallait que l'interface soit le plus clair possible, c'est pourquoi le passage d'une rue à "manuel" incite le bouton "modifier la rue" à passer à "enregistrer la rue". De même le bouton "supprimer" se désactive pour éviter toute suppression de la ligne "manuel".

Figure 6 : Récupération des données

Haut de page

 

I-3) Suppression des données

La suppression de données n'est active que lorsqu'une rue est sélectionnée. Elle ne se fait que rue par rue mais est très rapide à utiliser. Nous avons tout de même mis un bouton de confirmation pour éviter toute erreur.

Un test simple permet de vérifier que l'on retire bien la rue sélectionnée. Il suffit de vérifier que la bonne ligne de la liste soit retirée tout en laissant intact les autres lignes.

Un problème s'est révélé lors de la suppression de la dernière rue de la liste. En effet, le programme passe automatiquement à la rue suivante mais dans ce cas la, il n'y en a pas. On a donc spécifié au programme de repasser à la rue précédente dans ce cas particulier.

 

A présent que la gestion des données fonctionne selon nos attentes, nous allons nous intéresser à la phase de calcul.

Haut de page

Powered by Drupal - Modified by Danger4k Webmaster :