为了账号安全,请及时绑定邮箱和手机立即绑定

等待性,轮询直到满足条件

等待性,轮询直到满足条件

汪汪一只猫 2023-09-20 14:52:01
我正在尝试将等待性用于某些测试目的。我尝试使用的这段代码给我带来了问题:    await()             .atLeast(Duration.ONE_HUNDRED_MILLISECONDS)             .atMost(Duration.FIVE_SECONDS)             .with()             .pollInterval(Duration.ONE_HUNDRED_MILLISECONDS)             .until(result.contains("banana"));结果是一个字符串变量,我在代码的前面保存了一些远程系统输出。但是当我尝试像这样使用它时,出现以下错误:“直到 ConditionFactory 中的 (java.util.concurrent.Callable) 无法应用于(布尔值)”图书馆的正确使用方法是什么?在对获取的数据进行大量断言之前,我也想看看是否已成功从远程系统检索某些数据/文本字符串。
查看完整描述

2 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

你需要给予直到可调用。IE

await().until(() -> result.contains("banana"));


查看完整回答
反对 回复 2023-09-20
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

until需要一个返回布尔值(即 a )的函数Callable<Boolean>,而不仅仅是一个布尔值。

result.contains("banana")是一个返回布尔值的方法调用。这意味着.until(result.contains("banana"))被评估为.until(false).until(true)


查看完整回答
反对 回复 2023-09-20
  • 2 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信