出于某种原因,我得到了一个mocha超时,虽然响应返回202成功...我还有其他几个以完全相同的方式编写并且没有超时的测试:
describe('PUT /api/editTenant', function() {
it('it should change an existing tenant', function(done) {
should.exist(test_tenant.tenant_id);
var body = {
email : "test@example.com",
message: "Hello!",
tenant_id : test_tenant._id,
searchOpts : {}
};
request(host).put('/api/edit').send(body).end(function(err, res) {
if(err) throw err;
res.should.have.status(202);
done();
});
});
});
以下是正在测试的代码:
exports.editTenant = function(req, res) {
Tenant.findOneAndUpdate({ _id : tenant.tenant_id }, {
email : req.body.email,
phone : req.body.phone,
searchOpts : req.body.searchOpts,
contactMessage : req.body.message
}, function(err, affected) {
if(err) res.json(401, err);
res.json(202, { updated : affected } );
});
};
我再次进行了几次测试,并且没有超时......问题是我做了一个不是帖子吗?
答案 0 :(得分:0)
你应该设置mocha的超时
this.timeout(20000); // 20秒您可以拥有任何值
示例:您可以更改代码,如
describe('PUT / api / editTenant',function(){
it('it should change an existing tenant', function(done) {
this.timeout(20000); // add this code
should.exist(test_tenant.tenant_id);