如何使用express,nodeJS和Mocha测试app连接

时间:2014-10-01 21:53:18

标签: node.js express mocha should.js

我已经正确配置了我的应用,这样如果我运行node app.js,一切都会启动。我尝试使用单元测试来测试我的应用程序的连接是否正常工作。到目前为止我所拥有的是:

var options = {
    url: 'http://localhost',
    port: 8080,
};
var app =  require("../app.js");
var should = require('should'); 
var assert = require("assert");
var async = require('async');

it ('tests the ok connection of the app by checking that it is listening on port 8080', function(dont) {
  request(options,app)
    .get('/')
    .expect(200)
    .end(function (err, res) {
    res.header['location'].should.include('/')
    res.text.should.include('Listening on port 8080');
  done();
  });
});

我收到错误消息Error: options.uri is a required argument,这就是我添加var options的原因。现在我收到错误消息TypeError: Object #<Request> has no method 'get'

如何正确检查我是否有良好的关联(200),我在右页('/')并且正在记录消息Listening on port 8080在连接?

谢谢!

1 个答案:

答案 0 :(得分:0)

对于TypeError,请确保您使用的是supertest,而不是request。原因是模块request不提供.expect()和其他功能。