【发布时间】:2019-01-29 20:33:46
【问题描述】:
我正在使用 Mocha 测试我的节点 js 应用程序。我无法覆盖函数的错误块。下面是代码。
public getTaskSummaryByTaskId(req: Request, res: Response, next:
NextFunction) {
let taskId = parseInt(req.query['taskId'], 0);
new TasksManager().getTaskSummaryByTaskId(taskId).then(results => {
let data = results[0];
let taskList: ITaskSummary = {
Task: (data[0].length === 0 ? null : data[0][0]),
TaskWorkList: (data[1].length === 0 ? null : data[1]),
TaskAttachments: (data[2].length === 0 ? null : data[2]),
TaskAdditionalInfo: (data[3].length === 0 ? null : data[3])
};
return Api.ok(req, res, taskList);
}, err => {
next(err);
});
}
以下是我为上述函数调用的代码覆盖率编写的测试用例。如何覆盖上述调用的“错误”块
it('Task Summary By TaskId', () => {
return chai.request(app).get(route + '/taskSummary')
.query({ taskId: 1000 })
.then(res => {
expect(res.body).to.have.property('Task');
expect(res.body).to.have.property('TaskWorkList');
expect(res.body).to.have.property('TaskAttachments');
expect(res.body).to.have.property('TaskAdditionalInfo');
expect(res).to.be.json;
expect(res.body).to.be.an('object');
});
});
【问题讨论】:
标签: node.js express mocha.js chai