Как вызвать функцию из файла конфигурации теста webdriverio

URL-адрес показывает конфигурацию тестера WebdriverIO

https://webdriver.io/docs/configurationfile.html

У него много крючков. Рассмотрим крюк onComplete Я хочу написать функцию, может быть a function to create a file, В другом файле и вызовите эту функцию внутри onComplete крюк. Не могли бы вы помочь мне достичь этого.

1 ответ

Возможно , поздно, но вот как это сделать:

/ ** файл для сохранения вашей функции должен быть в es5 или вам нужно добавить babel, чтобы скрыть его в es6 перед запуском WebdriverIO ** /

test.js

module.exports = function foo(){
   console.log('here');
}

в файле конфигурации // перед export.config:

const foo = require('path-to-test.js');

используйте foo() в хуке onComplete()

Да, вы в значительной степени описали поток.

Определите свою функцию в файле и экспортируйте ее:

module.exports = (() => {
  /** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
    * > Def: Polls the DOM until the given 'desiredState' is found. 
    * @param    {string} desiredState ['loading', 'interactive', 'complete']
    * @returns  {Promise} WebdriverIO Promise
    * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  browser.addCommand('waitForReadyState', (desiredState) => {
    let foundState;

    browser.waitUntil(() => {
      foundState = browser.execute('return document.readyState;');
      console.log(`\n> Waiting for page to load ... | Current state: '${foundState}'`);
      return foundState === desiredState;
    }, browser.options.waitforTimeout, `Timeout before expected state! Found: '${foundState}' | Expected: '${desiredState}'`);
  });
})();

Затем импортируйте его в желаемом хуке (например: для команды custom_command, before крюк):

before: function (capabilities, specs) {
  require('./test/custom_commands/waitForReadyState');
}

Вы можете легко воспроизвести модель, чтобы реализовать функции ведения журнала и манипулирования файлами, которые вам нужно запустить в onComplete крюк.

Другие вопросы по тегам