【发布时间】:2012-07-23 12:49:21
【问题描述】:
我正在使用 mocha.js 和 supertest.js 在 express.js 上测试我的 json 服务器的请求。这些是我的导入:
request = require('supertest')
assert = require('assert') # Node assert
app = require('../app') # Vanilla express app
这是我在快递应用中的请求实现:
app.get '/user/:id', (req, res) ->
res.json {}
这是我的测试:
describe 'GET /user/:id', ->
it 'should return the user data if user found', (done) ->
request(app)
.get("/user/some_id")
.end((err, res) ->
assert.equal('test', 'test')
done()
)
这可行,但如果我将请求更改为:
app.get '/user/:id', (req, res) ->
User.findById req.param('id'), (err, doc) ->
res.json {}
摩卡咖啡测试超时。我猜这与 find 是异步的并且测试不等待它完成这一事实有关。我该如何解决这个问题?
【问题讨论】:
标签: node.js testing tdd express mocha.js