【发布时间】:2020-06-26 11:09:44
【问题描述】:
我有如下测试代码:
const mocha = require('mocha');
const describe = mocha.describe;
const it = mocha.it;
const chai = require('chai');
const request = require('supertest');
const app = require('../app.test');
chai.should();
describe('Get /histories', () => {
it('should return 200 status code', done => {
request(app)
.get('/client/profile')
.expect('Content-Type', /json/)
.expect(200, done);
});
it('should return code: 400', done => {
request(app)
.get('/client/profile')
.expect('Content-Type', /json/)
.expect(200)
.expect(res => {});
});
});
我使用 Express 以自定义状态代码进行响应:
return res.json({
code: 400
})
因此我想测试测试代码是否有代码作为对象的键,值是 400 作为数字。
我该如何编写这个测试?
【问题讨论】:
-
您是否尝试在最后一个
.expect回调中使用response? -
@jonrsharpe 不,我是单元测试员的新手。你能帮我写一些代码吗?
-
不,SO 不是代码编写服务。查看 Supertest 文档,他们有响应断言的示例。
标签: javascript node.js express supertest