Я пытаюсь написать очень простой скрипт WebdriverIO, который будет обращаться к URL-адресу, ждать, пока какое-то условие будет истинным в JS (например, установленная глобальная переменная), и делать снимок экрана, когда это верно. Но waitUntil
выдает сообщение об ошибке «CommandError: Promise никогда не разрешается с истинным значением». Ниже приведена упрощенная версия моего скрипта:
"use strict";
var webdriverio = require('webdriverio');
var client = webdriverio.remote({
desiredCapabilities: {
browserName: 'chrome',
},
})
.init()
.url("https://google.com")
.waitUntil(
function() {
return client.execute(
function() {
return true;
}
);
}
)
.screenshot();
Мое фактическое состояние, конечно, будет больше, чем просто "return true;
", но это показывает выполнение, которое, очевидно, вернет истинное значение.
Если убрать вызов screenshot()
, то ошибки не появляется.
Я пытался установить высокое значение тайм-аута для waitUntil()
и пытался вернуть фактическое значение result.value из вызова .execute()
- ни то, ни другое не помогло.