期望直到 python 中的特定条件

问题描述 投票:0回答:0

我正在做一些自动化测试。

在一些操作之后,系统应该在后面做一些事情,然后它应该在数据库中保存一个特定的值。

我想要一个函数,直到这个值被保存到数据库中,超时时间可以说是 30 秒。

类似的东西:

expected_value = "hello"
expect(check_in_db()['field_X'], expected_value, timeout=30000)

想法是这个

expect
函数应该在30秒内评估
check_in_db()['field_X']
直到值等于
expected_value

我一直在检查这个问题在 Python 中是否有一种简单的方法来等待特定条件为真? 如果我只有

check_in_db()
就可以了,但在我的情况下我不需要只有
check_in_db()
,我需要
check_in_db()['field_X']
,所以我也需要评估这部分:
['field_X']
.

另外我似乎

pexpect
这个例子:

from pexpect import expect

expected_value = "hello"
expect(check_in_db()['field_X']).to_be(expected_value)

但它不会等到条件为真,它只会尝试一次。

python pexpect
© www.soinside.com 2019 - 2024. All rights reserved.