2012-02-24 5 views
7

Je viens de télécharger mocha.js et j'ai effectué quelques tests de base avec expect.js pour m'assurer que tout fonctionne correctement.Tester les réponses dans node.js?

Mais qu'en est-il des tests de réponses dans mon application node à un URL spécifique? Comment puis-je tester la réponse que je reçois de la navigation à /users par exemple?

En utilisant Expresso, le prédécesseur de mocha.js, je pouvais faire assert.response(server, req, res|fn[, msg|fn]) et tester la réponse.

Répondre

6

C'est une chose que j'adore à propos de Node.js/Javascript, faire ce genre de chose est simple une fois que vous avez compris. En bref, vous exécutez votre code de serveur et vous utilisez en fait Request ou Superagent pour effectuer ces requêtes HTTP. Personnellement, je préfère Superagent en raison de son codage JSON automatique, mais attention, les documents sont périmés et incorrect, YMMV. La plupart des gens choisissent la demande.

simple Mocha Exemple d'utilisation Demande:

describe('My Server', function(){ 
    describe('GET /users', function(){ 
     it("should respond with a list of users", function(done){ 
      request('http://mytesturl.com/users', function(err,resp,body){ 
       assert(!err); 
       myuserlist = JSON.parse(body); 
       assert(myuserlist.length, 12); 
       done(); 
      }); 
     }); 
    }); 
}); 

Espérons que cela aide. Voici un échantillon de mes tests Mocha (CoffeeScript) en utilisant ce style avec des exemples détaillés complets: https://github.com/jprichardson/logmeup-server/blob/develop/test/integration/app.test.coffee Oh ya, il utilise aussi Superagent.

Questions connexes