1

J'utilise Steak et Capybara pour faire mes tests d'intégration. Je voudrais également tester la sortie de sérialisation (webservices utilisant le format XML et JSON) de mes modèles. Le problème est que JSON est uniquement disponible en utilisant une requête HTTP XML. Donc, la méthode de visite de Capybara ne fonctionne pas. Il semble également que je n'ai pas accès à la méthode xhr dans mes tests d'acceptation (je ne sais pas pourquoi, car j'ai besoin de la spec_helper.rb normale dans mon acceptation_helper.rb).Tests d'intégration des services web et XHR

Comment testez-vous les services Web? En utilisant la méthode xhr (après l'avoir demandé en quelque sorte)? Une méthode spéciale avec Capybara? Autre chose?

J'ai également une sérialisation personnalisée (à côté de la normale my_object.to_xml). Je suppose qu'il est préférable de le faire dans les tests du modèle. Souhaitez-vous ensuite tester la sortie du service Web de ces sérialisations personnalisées?

+0

Rails 3? Rspec 2? – shingara

+0

Rails 3 et RSpec 2 – Zardoz

Répondre

0

Vous pouvez toujours créer un contrôleur "proxy" qui envoie des requêtes au service Web et imprime le résultat. Il devrait être disponible uniquement dans l'environnement de test, évidemment. Ensuite, votre test Capybara visite le proxy et teste le contenu de la page.