我的测试用例中需要一个嵌套的 if 语句。
我需要检查变量 a 是否等于 X,如果是,我需要检查变量 b 是否等于 Y。
我试过这样做:
Click on button
Run Keyword If '${var_a}' == 'X'
... Run Keyword If '${var_b}' == 'Y'
... Click Element Locator_a
... ELSE
... Click Element Locator_b
... ELSE
... Click Element Locator_c
我收到的错误是点击元素需要 1 个参数并得到 4 个。 这意味着一旦它为第一个 if 语句 (var_a == X) 返回 False,它就会尝试调用第一个 ELSE 语句,并将所有后面的关键字作为参数 (Click Element, Arg1 = locator_b, Arg2 = Else, Arg3 = 单击元素,Arg5 = Locator_c)。
是否有一种无需我自己编写自定义关键字的机器人方法?
请您参考如下方法:
严格来说,不,没有办法为所欲为。但是,您可以将 if 语句组合成一个包含三个条件的大型语句,这些条件由“ELSE IF”和“ELSE”连接:
Run keyword if '${var_a}' == 'X' and '${var_b}' == 'Y'
... Click Element Locator_a
... ELSE IF '${var_a}' == 'X' and '${var_b}' != 'Y'
... Click Element Locator_b
... ELSE
... Click Element Locator_c
