我正在尝试使用supertest开发测试。问题是我的服务器中的所有路由都需要基本授权。当对每个请求使用postman时,我在authorization选项卡中输入登录名和密码,然后选择Basic Auth。
describe('correct login and password inserted', () => {
it('should pass validation', done => {
request(app)
.get('/api/roles')
.send({ username: 'user1', password: '1234' })
.expect(200)
.end((err, res) => {
if (err) {
return done.fail(err);
}
const roles = res.body;
console.log(roles);
expect(roles.data._id).toEqual(newRole._id);
expect(roles.data.name).toEqual('role_create');
expect(roles.data.prdPermissionsBitMask).toEqual(4);
expect(roles.data.userPermissionsBitMask).toEqual(4);
done();
})
});
});此操作应返回角色列表,但失败时返回未授权。有没有人能帮我把这些测试带到工作中。
const request = require('supertest')发布于 2016-10-26 23:23:52
您应该使用built in auth method that comes with SuperTest through SuperAgent。
request(app)
.get('/api/roles')
.auth('user1', '1234')https://stackoverflow.com/questions/40265830
复制相似问题