1

私はmochaでログインプロセスをテストしていました。これが私のテストケースの例です

var request = require('supertest');
var app = require('../app');

describe('Example', function() {
  var agent = request.agent(app);

  before(register(user));
  before(login(agent, user));

  before(function(done) {
    agent
      .get('/verify')
      .expect(200)
      .end(done);
  });
});

registerと関数の両方loginが正常に機能し、複数の前も期待どおりに定義の順序で実行され、最初registerlogin次にリクエストされました。しかし、3 番目beforeの では、/verify常にagentログインしていないと言います。

コードを次のように変更すると:

describe('Example', function() {
  var agent = request.agent(app);

  before(register(user));
  before(login(agent, user));

  it('should login as expected', function(done) {
    agent
      .get('/verify')
      .expect(200)
      .end(done);
  });
});

そして、今回agentは期待通りに記録されました。それは奇妙だ。誰かが私を助けてくれることを願っています、ありがとう。

4

1 に答える 1