gpt4 book ai didi

node.js - WebdriverIO 屏幕截图在等待执行条件后失败

转载 作者:太空宇宙 更新时间:2023-11-04 02:22:58 25 4
gpt4 key购买 nike

我正在尝试编写一个非常简单的 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() 设置较高的超时值,并尝试从 .execute() 调用返回实际的 result.value,但都没有帮助。

最佳答案

好吧,凭直觉我尝试了一些东西。我没有调用 client.execute(),而是调用 this.execute()。出于某种原因,这有效。我对其原因的唯一猜测是 waitUntil 在与 client 分离的特殊上下文中执行自身,而该上下文正是它期望以某种方式 promise 的内容。

关于node.js - WebdriverIO 屏幕截图在等待执行条件后失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32160956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com