摩卡跳过测试

时间:2018-12-14 11:16:52

标签: javascript node.js mocha supertest

这里的初学者(Node,JS)试图理解为什么Mocha跳过了我的测试。我意识到我正在次优地使用请求/超级测试库,但是我只想了解为什么,当它在调试中命中“ it”时,它只是跳过了“ describe”块的右括号而没有在其中运行代码:

Expression.Property(Expression.Constant(_tenantProvider),"TenantId");

任何有助于理解的帮助。

1 个答案:

答案 0 :(得分:0)

尝试让Nodejs在比较之前先评估承诺。例如,应为

const api = request('https://123-api.myapplication.io', {
  json: true
}, (err, res, body) => {

  if (err) {
    return console.log(err);
  }
  console.log(body.url);
  console.log(body.explanation);

});

describe('POST /v1/creation', () => {
  it('should return a 200', async() => {
    const app = api();

    let jwt = createJWT();

    await (supertest(app)
      .post('/v2/create')
      .set('Content-Type', 'application/json')
      .set('Authorization', `Bearer ${jwt}`)
      .send({
        name: 'Test',
        organisation: 'Test Inc.',
        objectionProcessingDefault: 'auto-uphold',
        users: [{
          email: 'me@example.co.uk',
          firstName: 'Bob',
          lastName: 'Smith',
          roles: ['ADMIN', 'AGENT'],
        }, ],
      }))
      .expect(200);
  });
});

另外,通过查看代码,您可能需要在发出发布请求之前设置标头。