【发布时间】:2016-02-24 06:57:18
【问题描述】:
我正在使用 supertest、mocha 并期望测试我的应用程序。我遇到了返回的文档为空且没有错误的问题。
router.get('/user', function (req, res) {
User.findOne({
_id: '56c59bb07a42e02d11a969ae'
}, function (err, user) {
if(err) return res.status(404).json({message: 'not found: ' + err.message});
res.status(200).json(user);
});
});
当我在 Postman 上测试时,我总是得到 200,这是我所期望的,但是当我运行测试时,我得到 404 :(
下面是我的简单测试代码,我总是得到 404。
it('get user', function (done) {
request(app)
.get('/user')
.expect(200)
.end(function (err, res) {
if (err) throw err;
done();
});
});
邮递员和测试都引用同一个猫鼬数据库,所以我确信它应该能够获取用户。 mongoose 和应用程序是如何在下面我的服务器中设置的。
mongoose.connect('mongodb://localhost/scratch', options);
app.listen(port, function () {
console.log('Scratch started on port ' + port);
});
我需要做些什么来让它工作吗?
【问题讨论】:
标签: node.js express mongoose supertest