Я ищу способ установить тайм-аут по умолчанию для каждого теста.
Я пишу некоторые сквозные тесты в Nightwatch. Один из тестов требует несколько раз нажать API для настройки начальных условий тестирования. Для запуска теста необходимо заполнить некоторые пользовательские данные. Это происходит в методе before ().
Проблема в том, что before () будет превышать время ожидания, когда оно достигнет заданного по умолчанию интервала времени ожидания. Я прочитал документацию для установки глобального тайм-аута по умолчанию, но я не хочу увеличивать его везде. Как я могу сделать это для каждого теста?
Asyn c До / После
https://nightwatchjs.org/guide/#asynchronous до каждого и после каждого -
Установка Global asyncHookTimeout
https://github.com/nightwatchjs/nightwatch/blob/master/examples/globalsModule.js#L20
Тестовый код выглядит следующим образом:
const { TEST_USER } = require('../../definitions/users');
const { TEST_USER_DATA } = require('../../definitions/users/data');
module.exports = {
async before(browser, done) {
// the default interval is here, but changing it doesn't have any effect
console.log(browser.options.globals.asyncHookTimeout); // 10000
const usersPO = browser.page.users();
// get the user from the API to test with
const testUser = await usersPO.getUser(TEST_USER);
// post test data to the user
await usersPO.postUserData(testUser.id, TEST_USER_DATA); // this will exceed the timeout.
// finished with async test setup
done();
},
// Tests
};