【问题标题】:how to get JSON data from an API in robot framework如何从机器人框架中的 API 获取 JSON 数据
【发布时间】:2018-05-04 12:14:08
【问题描述】:

我正在尝试从具有 ID 数据的机器人框架中的 API 获取 JSON 数据。我必须在从 API 获得的数据中获取 id 的计数。

我试过下面的代码:

${result} = get    ${API_JSON_PATH}
Should Be Equal  ${result.status_code}  ${200}
${json_data} =  Set Variable  ${result.content}
Log  ${json_data}

我收到以下提到的错误: 未找到名称为“${result} = get”的关键字。

该方法是否正确或是否有其他更好的方法来获取 JSONS 数据?

【问题讨论】:

  • 您能否提供完整的代码示例?如果我们不知道您使用哪个库,我们很难为您提供帮助。适当的公式将需要${result}get${API_JSON_PATH} 之间的4 个空格,但由于在我知道的所有库中都没有关键字Get(BuiltIn、Collections、RequestsLibrary 或 JSONLibrary)我想知道这是否确实是一个有效的关键字。

标签: selenium robotframework


【解决方案1】:

我正在使用 RequestsLibrary,它的幻灯片与您正在做的不同。

在您的情况下不需要凭据,但这是示例:

@{credential}=    Create List    Your_Username    Your_Password
Create Session    YOUR_API_ALIAS    YOUR URL    auth=@{credential}
${api}=    Get Request    YOUR_API_ALIAS    YOUR_URI

如果你想获取 JSON 的内容: ${api.json()}

文档:https://bulkan.github.io/robotframework-requests/

【讨论】:

    【解决方案2】:

    = 后面必须有两个或更多空格。 Robot 会查找两个或更多空格来查找关键字和参数,因此它认为您的第一条语句以关键字 ${result} = get 开头。由于这不是有效的关键字,因此您会收到该错误。

    【讨论】:

    • 我尝试了你的建议,但我仍然遇到同样的错误
    猜你喜欢
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-29
    • 1970-01-01
    • 2017-07-23
    • 2021-05-14
    • 2020-12-07
    相关资源
    最近更新 更多