错误:调用 waitForCondition 时错误响应状态:13

Error:Error response status: 13 when calling waitForCondition

本文关键字:错误 状态 响应 waitForCondition 调用      更新时间:2023-09-26

我正在尝试使用selenium-webdriverjs编写浏览器测试。当我调用以下代码片段时,我收到错误:错误响应:13。

browser.waitForCondition('var element = document.querySelector(".selector"); var style = document.defaultView.getComputedStyle(element,null); style =' + btnColor ,timeout);

我正在等待一个条件,我想从从 css 选择器获得的元素中获取计算的 css 样式。然后将计算出的 css 样式与名为 btnColor 的变量进行比较。(我知道也可以使用名为getComputedCss的Webdriver JS API方法做同样的事情。但是,我有兴趣使用 waitForCondition 来实现相同的目的。

我想知道如何正确使用 waitForCondition 来实现我想做的事情,如上所述,以及为什么代码片段会抛出错误。

提前感谢!

我已经找到了这个问题的答案。我在表达式中犯了几个JavaScript错误。以下是我用来解决我的问题的代码片段。

browser.waitForCondition('var element = window.document.querySelector(".selector"); var style = window.document.defaultView.getComputedStyle(element,null).getPropertyValue("background-color"); style ="' + btnColor + '"',timeout);

1)为了使用文档,你需要先调用窗口对象。
2)为了获得计算出的背景颜色,我需要使用方法.getPropertyValue()。
3) btnColor 包含一个字符串。因此,我需要在它周围加上双引号,以便解释器将其识别为字符串。