簡體   English   中英

我需要使用Robot Framework從YAML文件中獲取值

[英]I need to fetch value from a YAML file using Robot Framework

我試圖在我的YAML文件中替換值,但無法使用機器人框架編寫正確的字符串。

"patch_id_bw_data":
    "pronghornResponseBody":
        "shimBehaviourHeader":
            "destinationURL": ""
            "method": "PATCH"
            "targetName": "naas"
        "customHeaders": {}
        "responseBody":
            - "op": "replace"
              "path": "/serviceCharacteristic"
              "value":
                  - "name": "bandwidth"
                    "value": ""

需要在last--> "value": "200"替換200 last--> "value": "200"嘗試使用以下語法。 但無法替代:

設為字典${patch_id_bw_data.pronghornResponseBody.responseBody[0].value} value = 200M

這是一種啟動和運行的方法:

首先通過運行以下Python命令通過命令行安裝PyYAML python庫: py -m pip install PyYAML您可能還想查看PyYAML文檔: httpsPyYAML

這是一個示例.robot文件,用於執行所請求的內容:

*** Settings ***
Library  yaml
Library  OperatingSystem
Library  Collections

*** Test Cases ***
Load YAML into Robot and edit it
  ${YAML}=  Get File  ${CURDIR}${/}data.yaml
  ${LOADED}=  yaml.Safe Load  ${YAML}
  Set To Dictionary  ${LOADED}[patch_id_bw_data][pronghornResponseBody][responseBody][0][value][0]  value=200
  ${OUTPUT}=  yaml.Dump  ${LOADED}
  Create File  newdata.yaml  ${OUTPUT}

如果您希望在測試中使用它, ${OUTPUT}將包含新編輯的yaml數據,但在此示例中,我們使用Create File關鍵字將其保存到新文件中。

在運行此Robot Framework測試之前,請確保測試文件夾中包含data.yaml文件,其中包含您在問題中提供的示例數據。 運行機器人測試后,在正確值字段中包含200的文件夾中將有一個新文件newdata.yaml

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM