5

我有一个简单的身份验证系统,我使用 express 在 '/session' 上创建了一些 post/get/dels。我想对此进行测试,但我似乎找不到一种简单http.sendPut('/session', {data})的从服务器进行测试的简单方法。有人对图书馆使用有建议吗?

如果有帮助,我正在使用 Mocha/should 进行测试。

这是我想要测试的超级简单的 auth-thingy(它与其他一些东西挂钩):

//Login
app.post("/session", function(req, res) {
  if (req.body.username === "admin" && req.body.password === "admin") {
    req.session.user = "user";
    res.send("Successfully logged in!");
  } else {
    res.send(403, "Invalid username or password.");
  }
});
//Logout
app.del("/session", function(req, res) {
  req.session.user = null;
  res.send("Successfully logged out.");
});
//Am I logged in? Check for the client
app.get("/session", function(req, res) {
  if (req.session.user) {
    res.send(req.session.user);
  } else {
    res.send(403, "You are not logged in.");
  }
});

谢谢。

4

1 回答 1

5

Express.js 使用 supertest 进行测试,supertest 基于superagent

如果您需要一些示例,您可以在 Express.js测试代码中找到它们。

所有需要的测试request = require('./support/http');都使用超测。

于 2012-07-11T08:19:21.390 回答