【问题标题】:How to assign value to parameter in JSON body using Rest Assured-Java如何使用 Rest Assured-Java 为 JSON 正文中的参数赋值
【发布时间】:2019-11-15 09:24:52
【问题描述】:

我有以下 JSON 正文,其中 postingDate 是一个参数。任何人都可以帮助我使用Java代码将参数postingDate替换为15112019之类的值。下面的 JSON 我通过 String 变量中的 java 代码获取。(此 JSON 由开发人员提供,他们使用邮递员进行测试)

{
    "submissionRequestDTO": {
        "applicationRequestDTO": {
            "selectedProductDTOs": [
                {
                    "allowedProductClass": "LOANS",
                    "applicationRequestType": "NEW",
                    "productGroupCode": "ABADB",
                    "productGroupName": "Home Loan",
                    "productGroupType": "LOAN"
                }
            ]
        },

            "submissionDate": {
                "sqlDate": 1525026600,
                "dateString": "{{postingDate}}",
                "sqltimestamp": 1525026600
            },
            "submissionReceiptMode": "FF",
            "submissionValueDate": {
                "sqlDate": 1525026600,
                "dateString": "{{postingDate}}",
                "sqltimestamp": 1525026600
            },
            "submittedBy": "user",
            "targetUnit": "PP"
        }
    } }

我必须发送帖子请求的代码

> Response rs = given().contentType(ContentType.JSON)
>                 .auth().basic("ID", "PWD").
>                 header("Content-Type", "application/json").
>                 when().log().all()
>                 .body(JiraApiPractice.ReadJSONPayloadRequest().toString()). //Reading the payload 
>                 post("submissionDrafts").
>                 then().             
>                 extract().response();

附:我知道字符串替换,但我想知道是否有任何方法可以通过 Rest Assured 来做到这一点

【问题讨论】:

    标签: java json rest parameters rest-assured


    【解决方案1】:

    您最简单的选择是在拉入正文时调用 .replace("{{postingDate}}", your_value)。

    Response rs = given().contentType(ContentType.JSON)
                     .auth().basic("ID", "PWD").
                    header("Content-Type", "application/json").
                     when().log().all()
                    .body(JiraApiPractice.ReadJSONPayloadRequest().toString().replace("{{postingDate}}", your_value))
                    .post("submissionDrafts").
                     then().             
                     extract().response();
    

    如果您认为自己会添加更多类似的内容,则可能值得查看模板解决方案,可能是这样: https://github.com/HubSpot/jinjava

    PS,刚刚看到你的“PS”,我不相信 Rest Assured 有任何本机的东西。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多