Pycharm 即使robot框架上的条件为false,关键字仍将被执行
我有这个机器人框架的示例代码 我想经营这个公司 关键字a if>条件false 如果>条件为真,则运行关键字B 但是,如果条件为false,则将执行关键字a,但也将执行关键字b。 有人能帮忙解决问题吗?谢谢 基本上我想要的是if-else语句Pycharm 即使robot框架上的条件为false,关键字仍将被执行,pycharm,robotframework,selenium2library,Pycharm,Robotframework,Selenium2library,我有这个机器人框架的示例代码 我想经营这个公司 关键字a if>条件false 如果>条件为真,则运行关键字B 但是,如果条件为false,则将执行关键字a,但也将执行关键字b。 有人能帮忙解决问题吗?谢谢 基本上我想要的是if-else语句 ${result} get location Do some click so the link will not same ${elem} get location Verify run keyword unless '${result}
${result} get location
Do some click so the link will not same
${elem} get location
Verify
run keyword unless '${result}' == '${elem}' keywordA
run keyword if '${result}' == '${elem}' keywordB
接受ELSE子句
if(condition true) { run B }
else { run A }
下面是一个完整的工作示例:
Run keyword if '${result}' == '${elem}'
... keywordB
... ELSE
... keywordA
能否添加Get Location关键字代码和存储在${result}中的值。如果没有这两个,就不可能提供一个好的答案。hi@a.Kootstra Get Location是内置的关键字,不是吗?${result}和${elem}都存储了链接urlhi@Bryan Oakley,我使用了您的语法,但它返回错误关键字'BuiltIn.Run Keyword If'至少需要2个参数,得到1。@Lutfi:那么您做错了什么。我可以直接将我的答案剪切粘贴到一个测试用例中,在这个测试用例中,我定义了${result}和${elem},以及关键字a和关键字B,效果很好。解决了这个问题后,如果${result}=='${elem}'谢谢@Bryan,关键字B应该有一行Run关键字
*** Keywords ***
keywordA
log to console \nthis is keyword A
keywordB
log to console \nthis is keyword B
*** Variables ***
${result} foo
${elem} foo
*** Test Cases ***
test case A
Run keyword if '${result}' == '${elem}'
... keywordB
... ELSE
... keywordA