1

webdriver-io で beforeEach を使用する方法を知りたいです。私は CMS をテストしており、すべてのテストの前にログインできるようにしたいと考えています。ターミナルは、エラーがあり、要素が見つからないことを示しています。基本的には、browser.login() を書かなくても毎回ログインできるようにしたいです。

browser.addCommand('login', function () {
    return this
        .url('/admin/index.php')
        .setValue('[name="username"]', 'foo')
        .setValue('[name="password"]', 'bar')
        .click('[name="login"]');
});

それが私のログインコマンドです。

beforeEach(function(){
     browser.login();
});

これは私のbeforeEachです。

また、関数呼び出しも返そうとしました。

4

1 に答える 1

1

ログイン手順をヘルパーメソッドとして保存できます。

module.exports = function *() {
  // steps required for successful login
}

次に、このヘルパーメソッドを呼び出します。

'use strict';

import loginHelper from '../path/login_helper.js';

describe ('...', () => {
  beforeEach(function *() {
    yield* loginHelper();
  });

  it('...', function *() {
    // steps
  });
});
于 2015-12-04T00:05:33.113 に答える