Robot Framework中移除字符串引号:多数值传递引号问题求解
Robot Framework多数值参数传递去引号解决方案
解决方法一:改用列表变量存储多值
你当前定义的${sample}是单个字符串,Robot会把它当作一个整体参数传递,这是出现引号的核心原因。改成列表变量就能直接传递多个独立值:
*** Variables *** @{sample} 2000 2002 2050 2010-2020 *** Test Cases *** MyFirstTest [Setup] Create Service Test @{sample} ${pub_mail}
调用关键字时用@{sample}展开,每个元素都会作为单独参数传入,不会出现引号包裹的问题。
解决方法二:将字符串分割为列表后传递
如果无法修改变量定义格式,可在调用前把字符串分割成列表:
*** Test Cases *** MyFirstTest @{num_list}= Split String ${sample} , [Setup] Create Service Test @{num_list} ${pub_mail}
Split String会按, (逗号加空格)分割原字符串,得到独立元素的列表,再用@{num_list}展开传递即可。
额外检查:关键字参数处理逻辑
如果以上方法无效,需要确认Create Service关键字的参数要求:
- 它是否接收多个位置参数,还是需要特定格式的字符串输入?
- 若关键字需要逗号分隔的字符串,检查传递的字符串是否被额外添加了引号(比如
${result}的来源是否自带引号,可去掉不必要的evaluate替换操作)。
内容的提问来源于stack exchange,提问作者Dhivya Prabha
相关产品推荐
相关产品推荐

