Plan de test à faire ou pas?

Résolu
Dexter32 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
 fierfeu -
Bonjour,
Je m'occupe de la conception du cahier des charges pour l'élaboration d'un site Internet.
Mais je ne dois pas faire ce site Web je suis juste là pour une mission de conseil.
Je voudrais juste savoir si je dois faire un plan de test, et savoir ce qu'il faut faire ressortir dans ce plan de test.
Je pense qu'il serait intéressant de le faire pour mon rapport de stage, mais concrètement je vois pas l'intérêt vu que le site est loin d'être terminé.
Merci
A voir également:

3 réponses

R4f Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   62
 
Salut Dexter32,

Pour le plan de test, il faut prévoir de tester chacune des fonctionnalités du site web en question : s'inscrire, se connecter au site, se connecter en tant qu'administrateur,... mais tout dépend de ce que fait ton site...

Et puis il faut aussi tester les cas d'erreur :
- lorsqu'on valide un formulaire sans l'avoir rempli
- lorsqu'on entre une adresse postale là où une adresse e-mail est attendue
- lorsqu'on met une lettre là où un chiffre est attendu
- ...


Il y a des outils qui permettent de faire des tests appelés tests de non régression, c'est à dire des tests automatisés (généralement) qui vérifient que la nouvelle version du programme permet toujours de faire ce qu'il faisait auparavant, que la nouvelle versio n'introduit pas des bugs là où tout marchait bien avant.

Exemple de tel logiciel : Selenium http://selenium.openqa.org/

Il permet d'enregistrer des sessions sur une application web puis de les rejouer sur commande. Exemple : pour un système de gestion de comptes bancaires :
1- aller sur la page d'accueil
2- cliquer sur le lien pour l'accès aux comptes bancaires
3- remplir le formulaire et la valider
4- visualiser les liste des comptes bancaires
5- regarder le détail d'un compte
6- effectuer un virement de 100 Euros du compte courant au compte d'épargne
7- se déconnecter.

Et puis comme ça, à la nouvelle version, on teste si on peut toujours faire ça, même si les nouvelles fonctionnalités concernent la gestion d'un portefeuille d'actions, par exemple.

Raph
3
Dexter32 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Merci R4f c'est bien ce que je voulais savoir...

Une petite précision, je dois faire ce plan de test même si je n'ai pas l'application devant moi?? Le site web est actuellement en cours de développement.
J'essaye de prévoir, avec les connaissances que j'ai de ce site Web, qu'elles sont les points éventuellement bloquants sur lesquelles il faudra faire un test c'est ça? Et qu'elles seront les réponses attendues aux différentes erreurs rencontrées?

Il y a des tests que je ne pourrais qu'imaginer... Par exemple si je suis connecté en tant qu'administrateur, que se passe-t-il si je remplit un formulaire d'inscription ?
Il faut que je prévois tout ces points (assez tordu - mais qui peuvent arriver) ???

Cordialement
Dexter
0
R4f Messages postés 441 Date d'inscription   Statut Membre Dernière intervention   62 > Dexter32 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
> Une petite précision, je dois faire ce plan de test même si je n'ai pas l'application devant moi??

Eh oui, c'est là que c'est intéressant, car les tests permettent de dire exactement comme ça devrait marcher. Bon, ensuite, on va faire des compromis, mais c'est une démarche différente de celle qui consiste à regarder comme ça marche et de dire «Bon, ça va» et on oublie parfois une bonne partie des spécifications originales...


J'essaye de prévoir, avec les connaissances que j'ai de ce site Web, qu'elles sont les points éventuellement bloquants sur lesquelles il faudra faire un test c'est ça?

Oui, puisque c'est toi qui fais les spécifications, c'est toi qui dois, normalement, avoir assez d'expérience du métier pour savoir où le développement va être difficile, facile, rapide à faire, là où il va falloir 100 tests, là où il va en suffire de 2...


Et qu'elles seront les réponses attendues aux différentes erreurs rencontrées?

Oui, ça doit faire partie des spécifications, car sinon les codeurs, pour faire plus simple, vont te rediriger vers une page, toujours la même, où il y aura marqué "vous avez fait une erreur, revenez en arrière pour corriger votre bourde" (enfin, c'est ce que je ferais si je voulais avoir terminé vite fait bien fait ;-).

Il y a des tests que je ne pourrais qu'imaginer... Par exemple si je suis connecté en tant qu'administrateur, que se passe-t-il si je remplit un formulaire d'inscription ?


Eh oui, lorsqu'on développe ou qu'on fait développer une application, il y a plusieurs approches :
- celle du bâtiment, où on fait un plan (spécifications) qu'on suit ensuite à la lettre. C'est ton cas, donc TU dois savoir ce qui va se passer lorsqu'on se connecte en tant qu'administrateur, non ? Sinon, comment les programmeurs vont faire pour coder un truc qui n'est pas spécifié ?
- il existe aussi l'approche agile, très intéressante : https://fr.wikipedia.org/wiki/M%C3%A9thode_agile

Cette dernière approche est de plus en plus utilisée, notamment autour d'outils comme Ruby On Rails et autres frameworks de développement agile et/ou rapide. Elle part du principe qu'on ne sait pas à 100% ce qu'on veut au début. On va le découvrir en ayant l'application sous ma main. Donc on va faire un processus cyclique :
1- évaluer les fonctionnalités prioritaires/incontournables
2- les classer par ordre d'importance décroissante
3- garder les 80% des plus importantes et les développer
4- retourner en 1)

Chaque cycle de ces étapes doit durer peu de temps, les fonctionnalités doivent être simples (relativement).

Au bout de chaque cycle, le client peut tester l'application et donner des feedbacks, qui permettent de déterminer les développements prioritaires pour le cycle suivant.
Ainsi à partir du 2e cycle, on fait des corrections de bugs + de nouveaux développements.


Raph




Il faut que je prévois tout ces points (assez tordu - mais qui peuvent arriver) ???
0
Dexter32 Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   > R4f Messages postés 441 Date d'inscription   Statut Membre Dernière intervention  
 
NICKEL...

Merci beaucoup, c'est exactement ce que je cherchais...
Aller je m'y mets, ça risque d'être fastidieux mais bon j'ai pas le choix

Bonne journée et encore MERCI
Dexter
0
nounou
 
bonjour,
actuellement je dois faire des tests selenium sur une page d'inscription à un site.
vérifier que si aucun champs n'est renseigné, les messages d'erreur s'affichent bien
vérifier que lorsqu'un champ est correctement renseigné (c'est-à-dire mettre des chiffres s'il s'agit d'une date de naissance par exemple et non des lettres) , le message d'erreur s'efface
voila le type de test selenium que je dois réaliser

Avez-vous déjà effectuer de tels tests ? si oui, pourriez-vous m'aider ?
0
dexter23
 
Bonjour,

Techniquement il s'agit juste de prévoir des tests sur chaque champ pour limiter les erreurs des utilisateurs.
Après j'ai effectivement réaliser un plan de test du site Internet à ma charge, mais il s'agissait plus de tests haut niveau, je rentrais pas vraiment des ces détails même s'il aura fallut.
Si tu veux un exemple de plan de tests laisse ton mail je t'enverrais une partie de mon travail.
Cordialement
Dexter
0
nounou
 
bonjour,
J'ai réussi à faire les tests mais Selenium m'affiche deux erreurs au moment ou j'exécute mon testCase :
Je crois que Selenium ne reconnait pas le contenu javascript au niveau de la cible.

voici le test que j'ai effectué :

Commande Cible Valeur
open /create_account.php
type user_firstname
click //input[@value='Envoyer']

assertTextPresent <div style="display: block;" id="advice-required-user_lastname" class="validation-advice">Veuillez saisir un nom valide.</div>

type user_firstname ihiohfio
click //input[@value='Envoyer']
assertTextPresent <div style="display: none;" id="advice-required-user_lastname" class="validation-advice">Veuillez saisir un nom valide.</div>

voici les 2 erreurs qu'il m'affiche :

assertTextPresent <div style="display: block;" id="advice-required-user_lastname" class="validation-advice">Veuillez saisir un nom valide.</div>


assertTextPresent <div style="display: none;" id="advice-required-user_lastname" class="validation-advice">Veuillez saisir un nom valide.</div>


Néanmoins quand je tape juste Veuillez saisr un nom valide dans la cible ça marche mais c'est un réel problème si Selenium ne prend pas en compte le contenu de la page source (et notamment la syntaxe Javascript).
Ca risque de poser des problèmes pour les tests plus compliqués que je serai amené à exécuter avec Selenium. De plus, je compte ensuite automatiser ces tests grace au serveur Selenium RC et ensuite intégrer Selenium RC à CruiseControl. (Je sais que c'est possible...)
Si tu as déjà réalisé ce genre de manipulations, tu peux toujours m'envoyer un message pour m'éclairer...
0
fierfeu
 
As tu progresser sur ce point ?

j'ai le même objectif que toi.

Stephane
0