【发布时间】:2020-08-22 00:11:31
【问题描述】:
我正在使用 mocha 和 chai 测试 node.js 控制器文件,但我无法在我的测试中模拟出响应对象
TestController.ts
export class TestController {
static async getTest(req:any, res:any, next:object) {
console.log("Test");
//some code here
res.status(200).json(result.rows);
}
当我调用 API、返回正确的响应等时,它工作得非常好。但是当我尝试测试这个控制器时,这是我的测试文件所拥有的
Test.ts
it('Get Test method', async function () {
let req = {params: {testid: 12345}};
let res:any = {
status: function() { }
};
res.json = '';
let result = await TestController.getTest(req, res, Object);
});
我不确定如何在这里表示响应对象。如果我只是通过以下方式声明变量 res
let res:any;
我在测试中看到以下错误
TypeError: Cannot read property 'json' of undefined
我不确定我的响应数据结构 res 应该如何使这个测试工作。
【问题讨论】:
标签: javascript node.js mocha.js chai chaining