私は非常に単純な WebdriverIO スクリプトを作成しようとしています。このスクリプトは URL にヒットし、JS で何らかの条件が true になるのを待ち (グローバル変数が設定されているなど)、true になったらスクリーンショットを撮ります。しかし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()
どちらも役に立ちませんでした。