我真的可以提供一些有关测试在node.js中创建的RESTful api的建议。那里有很多框架,我很茫然。我的测试知识通常不够好,这就是为什么我要编写这些测试的原因。我尝试了vows.js,这看起来不错,但是我无法弄清楚如何整合我的API的测试,我需要某种客户端。我需要做的只是一个简单的示例来测试登录系统。

最佳答案

6个月后更新

誓言-很烂。使用mocha

原来的

更新为vow-is代码

这是vows-is examples folder中的誓言示例。

// simple HTTP
// Run with node example/simple-http.js

var express = require("express");
    is = require("../src/vows-is.js");

is.config({
    "server": {
        "factory": function _factory(cb) {
            var app = express.createServer();

            app.get("/", function(req, res) {
                res.send("hello world");
            })

            app.listen(3000);

            cb(app);
        },
        "uri": "http://localhost:3000",
        "kill": function _kill(app) {
            app.close();
        }
    }
});

is.suite("http request test").batch()

    .context("a request to GET /")
        .topic.is.a.request("GET /")
        .vow.it.should.have.status(200)
        .vow.it.should.have
            .header("content-type", "text/html; charset=utf-8")
        .context("contains a body that")
            .topic.is.property('body')
            .vow.it.should.be.ok
            .vow.it.should.include.string("hello world")

.suite().run({
    reporter: is.reporter
}, function() {
    console.log("finished");
    is.end();
})

这使用vows-is

10-05 21:04
查看更多