Re,
Merci pour les liens. Il faut croire que je fais mal ma veille IT car
je n'avais pas connaissance de ces outils.
J'étais parti sur le terme de test unitaire car l'idée est de créer
les tests correspondants à l'interface uniforme que je souhaite et
ensuite de développer les drivers REST qui vont permettre de passer
ces tests (Test Driven Development).
L'idée est donc de faire des requêtes HTTP dans un ordre précis et de
comparer le résultat avec le résultat attendu (code HTTP, entêtes
HTTP, contenu). Exemple trivial :
# Scénario de test du driver "File"
# Test de récupération d'un fichier inexistant
GET : /file/test.txt : : (Accept : text/plain)
- 410 : Oops nothing to see here ! : (Content-Type : text/plain)
# Test de l'ajout de fichier
PUT : /file/test.txt : Ceci est un texte : (Accept : text/plain)
- 201 : Ceci est un texte : (Content-Type : text/plain)
# Test de récupération du fichier
GET : /file/test.txt : : (Accept : text/plain)
- 200 : Ceci est un texte : (Content-Type : text/plain)
# Test de l'idempotence de l'ajout de fichier
PUT : /file/test.txt : Ceci est un texte : (Accept : text/plain)
- 201 : Ceci est un texte : (Content-Type : text/plain)
# Test de suppression de fichier
DELETE : /file/test.txt : : (Accept : text/plain)
- 200 : No more file here : (Content-Type : text/plain)
# Test de suppression effective du fichier
GET : /file/test.txt : : (Accept : text/plain)
- 200 : Ceci est un texte : (Content-Type : text/plain)
# Test de l'idempotence de la suppression de fichier
DELETE : /file/test.txt : : (Accept : text/plain)
- 200 : No more file here : (Content-Type : text/plain)
J'ai donc besoin de pouvoir modifier :
- le chemin de l'URI
- la méthode HTTP
- les entêtes HTTP
Et comparer avec :
- le code de réponse attendu
- les entêtes attendus
- le contenu attendu
De cette manière, je suis sûr de répondre au poil près aux
spécifications du service web désiré qui sera utilisé par un
application web cliente en JS via un navigateur.
J'ai le sentiment de pouvoir faire cela avec les outils que vous
m'avez proposé. Il me manque juste une brique pour fabriquer ces
requêtes test de manière conviviale (voire triviales pour un novice).
Ca serait peut-être aussi utile de pouvoir les enregistrer dans un
format indépendant de l'outil de test utilisé pour en changer à
volonté.
Si je trouve chaussure à mon pied, je vous préviens. Hésitez pas si
vous avez d'autres propositions.
Merci en tout cas pour votre coup de main.
On 2 fév, 22:26, Frank Taillandier <
frank.tailland...@gmail.com>
wrote:
> Outre Selenium, pour écrire des tests tu as aussi Watir (Ruby) :
http://watir.com/
>
> Une rapide présentation :
http://web-qualite.over-blog.com/article-watir-outil-de-test-par-exce...
>
> 2011/2/2 nicolas_froidure <
nicolas_froid...@elitwork.com>
>
>
>
> > Hello,
>
> > Je suis sur un projet RESTful qui avance tranquillement, mais je ne
> > parviens pas à trouver un outil simple à utiliser pour faire des tests
> > unitaires sur une application web RESTful.
>
> > Je pense à une application desktop dans laquelle on pourrait créer des
> > projets et y ajouter des scénarios d'utilisation pour tester toutes
> > les fonctionnalités fournies par l'application web.
>
> > Mes besoins :
> > - pas dépendant d'un serveur qui doit être configuré de telle ou telle
> > manière avec tel ou tel langage.
> > - adaptable à mes besoins (idéalement GNU/GPL)
> > - possibilité d'exporter un projet sous forme de fichier pour
> > permettre à d'autres d'effectuer les tests.
>
> > Je réfléchi à le créer si je trouve pas et je voudrais pas réinventer
> > la roue si possible... Si je devais le créer, ça serait du GPL donc je
> > serai ouvert à toutes les propositions et aux feedbacks de personnes
> > intéressées par un tel outil.
>
> > ++
>
> > --
> > Vous recevez ce message, car vous êtes abonné au groupe Google
> > Groupes Professionnels francophones du développement web.
> > Pour envoyer un message à ce groupe, adressez un e-mail à
> >
webd...@googlegroups.com.
> > Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse
> >
webdevfr+u...@googlegroups.com<
webdevfr%2Bunsu...@googlegroups.com>
> > .