我想了解一下.done()和.end()函数的使用情况。end()
函数,而用mocha和 Chai编写API测试脚本。同时,我也很困惑,我是否应该使用 done()
的功能是否在这里,也有什么具体的区别。.end()
和 .done()
.
这是代码。
describe("Suite", () => {
it('Post Test case', (done) => {
request('https://reqres.in')
.post('/api/users')
.send({
"name": "morpheus",
"job": "leader"
})
.set('Accept', 'application/json')
.expect(200,'Content-Type', /json/)
.then((err,res) => {
console.log(JSON.stringify(err))
console.log(JSON.stringify(res.body))
console.log(JSON.stringify(" "))
})
done();
});
it('Put Test case', (done) => {
request('https://reqres.in')
.put('/api/users/2')
.send({
"name": "morpheus",
"job": "zion residents"
})
.expect(200)
.end((err, res) => {
console.log(JSON.stringify(err))
console.log(JSON.stringify(res.body))
console.log(JSON.stringify(" "))
})
done();
})
})
你把事情搞混了。
end
是一个方法的 expressjs框架 而它 末端 的服务器响应。
done
的参数。摩卡测试功能. 当你完成你的 异步 检验,让 mocha
知道你的异步代码已经完成执行,它可以继续进行另一个测试。
而在你的情况下,你需要这两者。