运行我的Robot Framework脚本时,我不断收到此错误:
“不建议在行继续标记'...'之前使用'\'对空单元格进行转义。请在Robot Framework 3.2之前删除转义。”
这是示例代码:
*** Test Cases ***
Debug
${Str} = Set Variable Rose
: FOR ${Ctr} IN RANGE 1 5
\ Run Keyword If '${Str}' == 'Test' Log Test
\ ... ELSE Log Not Test
我搜索了一个解决方案,但只有此链接:https://gerrit.openbmc-project.xyz/#/c/openbmc/openbmc-test-automation/+/22245/
我可以看到他们使用了FOR / END而不是:FOR(以前运行良好)。
FOR ${userid} IN RANGE 2 16
${user_info}= Get User Info ${userid}
Run Keyword If "${user_info['user_name']}" != ""
... Run IPMI Standard Command user set name ${userid} ""
END
但是,当我尝试将代码更改为使用FOR / END时,RIDE会自动将其更改回:FOR。
我大量使用RIDE,并且希望继续这样做,因此我需要它来解决此错误。我的RIDE是最新的,所以升级将无法进行。任何帮助将不胜感激。
答案 0 :(得分:2)
FOR循环的语法已更改。从文档中:
不使用END关闭循环,使用\转义循环中的关键字,并且 使用:FOR代替FOR都将在Robot中被弃用 框架3.2。建议用户尽快切换到新语法 尽可能。
使用您的代码,我仍然可以运行测试,但是会显示弃用警告。要删除在Eclipse中对我有用的警告:
Debug
${Str} = Set Variable Rose
:FOR ${Ctr} IN RANGE 1 5
\ Run Keyword If '${Str}' == 'Test' Log Test
... ELSE Log Not Test
在ELSE行中删除转义字符时,不再显示警告。不过,这是一种解决方法,直到我猜想要推出新版本的RIDE为止。