RobotFramework设置字典报错:无法识别Set To Dictionary关键字问题求助
报错根因
- 静态变量段不支持执行关键字:
*** Variables ***是静态赋值区域,不能直接调用Create Dictionary关键字,系统会把后面的Create Dictionary当成普通字典项解析,不符合字典变量的赋值语法,触发第一个报错。 - 关键字找不到是连锁问题:文件解析阶段的报错会打乱后续的库加载、关键字识别逻辑,你已经正确导入了
Collections库,只要修复前面的变量定义错误,Set To Dictionary找不到的问题会自动消失。
解决方案
你只需要把变量段的空字典初始化改为静态写法,再把修改后的字典设为套件级变量即可,不需要用全局变量,也不用在变量段提前定义field1:
Library Collections Library BuiltIn Library String *** Variables *** &{info} {} *** Test Cases *** Case_00_Initialization Log Hello 1 WARN Set To Dictionary ${info} field1=A sample string # 设为套件级变量,当前测试套件下所有后续测试用例均可访问 Set Suite Variable ${info} Log Hello 2 WARN
执行命令保持不变即可:
python -m robot -L TRACE --NoStatusRC main.robot
修改后当前测试套件内所有后续用例都可以直接读取${info}的内容,完全符合你的需求。
内容的提问来源于stack exchange,提问作者mercury
相关产品推荐
相关产品推荐

