我正在尝试使用Robot框架从逗号分隔的列表中读取值。我在测试以下代码时遇到问题
我已经尝试过机器人框架代码
Method.robot
@{list}=[('Param_Name', 'Param_Value'), ('res_name', 'res123'), ('id',
'931')]
ReadCSV
[Arguments] ${paramname}
${dict1}= Set Variable ${list}
${values}= Set Variable ${dict1[0]}[${paramname}]
[return] ${values}
RobotFile.robot
${Read_Name}= ReadCSV res_name
log to console ${Read_Name} #prints None
Error:when executing RobotFile.robot
List '${dict1[0]}' used with invalid index 'res_name'.
预期:res123 实际:无
答案 0 :(得分:1)
那是元组列表,而不是字典。这就是为什么您不能直接通过键访问索引的原因。
如果您仍然想要一个元组列表,则应首先遍历该列表,并评估第一个值是否为“键”,然后访问该值。
ReadCSV
[Arguments] ${paramname}
: FOR ${list_item} IN @{list}
\ ${values}= Run Keyword If '${list_item[0]}' == '${paramname}' Set Variable ${list_item[1]} ELSE Set Variable ${None}
\ Run Keyword If '${list_item[0]}' == '${paramname}' Exit For Loop
[Return] ${values}