If statement 机器人框架中多If条件的评估

If statement 机器人框架中多If条件的评估,if-statement,robotframework,If Statement,Robotframework,我试图在Robot框架中计算下面的表达式 如果“${buttondisplayed}”为“通过”且“${ReturnedInfo}”为“运行”关键字 “通过”,一些关键词 如果“${buttondisplayed}”== “通过”和“${ReturnedInfo}”==“失败”,一些关键字 否则,如果“${buttondisplayed}”==“FAIL”和“${ReturnedInfo}”==“PASS”, 一些关键词 否则,一些关键字 其中${buttondisplayed}和${Retur

我试图在Robot框架中计算下面的表达式

如果“${buttondisplayed}”为“通过”且“${ReturnedInfo}”为“运行”关键字 “通过”,一些关键词

如果“${buttondisplayed}”== “通过”和“${ReturnedInfo}”==“失败”,一些关键字

否则,如果“${buttondisplayed}”==“FAIL”和“${ReturnedInfo}”==“PASS”, 一些关键词

否则,一些关键字

其中${buttondisplayed}和${ReturnedInfo}的值均为FAIL

基于上述条件,最后提到的其他部分应该执行,但是在日志输出中,我得到以下结果

文档:
如果条件为true,则使用给定参数运行给定关键字。 开始/结束/经过时间:20170806 11:15:14.448/20170806 11:15:14.448/00:00:00.000

所以这里基本上不执行任何条件。
有人能指出这个表达式的错误吗?

您发布的代码至少有四个问题:

  • 第一个“如果”后面只有一个空格
  • “else if”是小写。它必须全部为大写(
    否则,如果
  • 代码中有逗号。robot语法不支持逗号作为字段分隔符
  • 您的代码似乎跨越多行,但您没有使用robot行延续字符

  • 您发布的代码至少有四个问题:

  • 第一个“如果”后面只有一个空格
  • “else if”是小写。它必须全部为大写(
    否则,如果
  • 代码中有逗号。robot语法不支持逗号作为字段分隔符
  • 您的代码似乎跨越多行,但您没有使用robot行延续字符

  • 感谢布莱恩抽出时间,我根据你的建议进行了更改,现在一切正常。谢谢。这真的很有帮助,谢谢布莱恩的时间,我根据你的建议做了修改,现在效果很好。谢谢。这真的很有帮助,
    Run Keyword If   '${buttondisplayed}'=='PASS' and '${ReturnedInfo}'=='PASS' Some Keyword
    ... ELSE IF  '${buttondisplayed}'=='PASS' and '${ReturnedInfo}'=='FAIL' Some Keyword
    ... ELSE IF  '${buttondisplayed}'=='FAIL' and '${ReturnedInfo}'=='PASS' Some Keyword
    ... ELSE Some Keyword