从机器人框架中的json文件生成项目

时间:2017-01-05 17:17:17

标签: json robotframework

目前我有一个自定义库来读取json文件并输出列表。例如

def get(f):
  with open(f) as fd:
    data=json.load(fd)
  return [ k for k in data['d']['a'] ]

然后在RF中,我称之为

@{items}=    get     "f.json"

有没有办法在没有自定义功能的情况下在Robotframework中本地执行此操作?我通过HttpLibrary看了一下但是找不到任何相关内容。

1 个答案:

答案 0 :(得分:1)

是的,有可能。以下是如何在没有HttpLibrary的情况下完成它,而是使用OperatingSystem Robot Framework Library(打开文件)和json Python库(加载JSON):

*** Settings ***
# Import Robot Framework Libraries
Library  OperatingSystem
# Import Python Library
Library  json

*** test cases ***
mytest
    # no need for double quote around file name. Variables are string by default
    @{item} =    get_in_robot    f.json

*** Keywords ***    
get_in_robot
    [Arguments]    ${file_path}
    ${data_as_string} =    Get File    ${file_path}
    ${data_as_json} =    json.loads    ${data_as_string}
    # looking into the dict at ["d"]["a"] will return the list
    [Return]    ${data_as_json["d"]["a"]}

希望这有帮助