Robotframework:使用等待关键字成功

问题描述

我是 Robot 的菜鸟,我想对我的关键字使用等待关键字成功,但它总是通过,即使它不应该通过。所以我想弄清楚控制通过/失败的关键字的返回值是多少。 举个例子: 我的关键词

def check_num(num):
    if num == 1:
        return True
    else:
        return False

Am calling:
Wait Until Keyword Succeeds      5 times      2 s       check num       0

我希望它运行 5 次,暂停 2 秒并在最后失败,但它总是绿色的。如果它不是应该使用的 True/False,你能告诉我什么是预期的吗? 谢谢。

解决方法

返回 False 不被视为失败。关键字只有在抛出异常时才会失败。

def check_num(num):
    if num != 1:
        raise Exception(f”{num} is not 1”)

有关详细信息,请参阅机器人框架用户指南中的 Reporting keyword status