Я использую, будьте уверены - https://code.google.com/p/rest -assured / wiki / Использование Мой JsonObject выглядит так
{
"id": "12",
"employeeInfo": null,
"employerInfo": null,
"checkDate": 1395093997218,
"netAmount": {
"amount": 70,
"currency": "USD"
},
"moneyDistributionLineItems": [
{
"mAmount": 100,
"employeeBankAccountId": "BankAccount 1"
}
],
}
Как я могу отправить это как часть параметров с помощью POST с подтверждением REST? я пытался
given().param("key1", "value1").param("key2", "value2").when().post("/somewhere").then().
body(containsString("OK"));
Но это не масштабируется для ОГРОМНЫХ объектов с вложенными значениями. Есть ли лучший подход?
8
user3431212
18 Мар 2014 в 06:27
Упомяните, что вы пробовали?
– Tamil Selvan C
18 Мар 2014 в 06:28
Да, есть лучший подход, используйте Karate вместо REST-assured: github.com/intuit/karate
– Peter Thomas
24 Дек 2017 в 08:09
2 ответа
Лучший ответ
Вы просто отправляете документ JSON в теле. Например, если у вас есть документ JSON в строке с именем myJson, вы можете сделать это так:
String myJson = ..
given().contentType(JSON).body(myJson).when().post("/somewhere"). ..
Вы также можете использовать POJO, входной поток и byte [] вместо String.
9
Johan
18 Мар 2014 в 10:44
1
Так что нет способа передать вложенные значения в REST Assured? Я хочу выполнить параметризацию, и если мы используем статический файл JSON, то это сложно, или другим способом является создание файла JSON во время выполнения для этого конкретного запроса/API и его использование.. :(
– Paresh
12 Апр 2015 в 03:27
О, я думаю, даже с помощью вышеупомянутого метода мы можем параметризовать образец!! Спасибо
– Paresh
12 Апр 2015 в 04:22
Вы можете параметризовать его другими способами, например, с помощью механизма шаблонов, такого как jmte (code.google.com /p/jmte).
– Johan
12 Апр 2015 в 07:23
URL file = Resources.getResource("PublishFlag_False_Req.json");
String myJson = Resources.toString(file, Charsets.UTF_8);
Response responsedata = given().header("Authorization", AuthorizationValue)
.header("X-App-Client-Id", XappClintIDvalue)
.contentType("application/vnd.api+json")
.body(myJson)
.with()
.when()
.post(dataPostUrl);
2
mszymborski
12 Авг 2016 в 23:09
Похожие вопросы
Новые вопросы
http-post
POST является одним из методов протокола HTTP; он используется, когда клиенту необходимо отправить данные на сервер, например, при загрузке файла или отправке заполненной формы.