codeceptjs autoLogin


codeceptjsの公式ドキュメントに従って操作しましたが、Beforeがloginを呼び出すと
login is not definedエラーが発生しました
Scenarioでは呼び出しが見つかった後、
Scenarioのように修正して解決します
*_test.js
before
Before(login => {
   login('user'); // login using user session
});

// Alternatively log in for one scenario
Scenario('log me in', ( {I, login} ) => {
   login('admin');
   I.see('I am logged in');
});
after

Before( ( {I, login} ) => {
   login('user'); // login using user session
});

// Alternatively log in for one scenario
Scenario('log me in', ( {I, login} ) => {
   login('admin');
   I.see('I am logged in');
});
codecept.conf.js
plugins: {
    autoLogin: {
      enabled: true,
      saveToFile: true,
      inject: "login",
      users: {
        algolab: {
          // loginAdmin function is defined in `steps_file.js`
          login: (I) => I.loginGyeongwon("gyeongwon", "1234"),
          check: (I) => {
            I.seeInCurrentUrl("/order");
            I.see("알고랩");
            I.see("로그아웃");
          },
          // if we see `Admin` on page, we assume we are logged in
        },
      },
    }
}
steps_file.js

module.exports = function () {
  return actor({
    loginGyeongwon(userId, password) {
      this.amOnPage("/");
      this.fillField("input#username", userId);
      this.fillField("input#password", password);
      this.click("로그인");
    },
  });
};