当前位置:  开发笔记 > 编程语言 > 正文

Robot Framework嵌套if语句

如何解决《RobotFramework嵌套if语句》经验,为你挑选了1个好方法。

我需要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

我收到的错误是click元素期望1参数得到4.意思一旦它为第一个if语句返回False(var_a == X)它试图调用第一个ELSE语句,所有后面的关键字作为参数(Click Element,Arg1 = locator_b ,Arg2 = Else,Arg3 = Click Element,Arg5 = Locator_c).

如果没有自己编写自定义关键字,是否有机器人方法可以做到这一点?



1> Bryan Oakley..:

严格来说,不,没有办法做你想做的事.但是,您可以将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

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有