Veg*_*gar 3 java json resteasy rest-assured
我正在使用resteasy做一个休息api ,并且放心地测试它.
假设我有message一个属性的类text.
@XmlRootElement
public class message {
@XmlElement
public String text;
}
Run Code Online (Sandbox Code Playgroud)
以下测试将尝试将此对象发布到给定的URL:
message msg = new message();
msg.text = "some message";
expect()
.statusCode(200)
.given()
.contentType("application/json")
.body(msg)
.when()
.post("/message");
Run Code Online (Sandbox Code Playgroud)
msg对象被序列化为json并发布,但不是按照我想要的方式 - 而不是以resteasy需要的方式,即.
发布了什么:
{ "text": "some message" }
Run Code Online (Sandbox Code Playgroud)
什么工作:
{ "message": { "text": "some message" } }
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何按预期工作?
我知道已有答案,但我想分享我能够发送json对象的方式.有人可能会觉得有帮助
// import org.json.simple.JSONObject;
JSONObject person = new JSONObject();
person.put("firstname", "Jonathan");
person.put("lastname", "Morales");
JSONObject address = new JSONObject();
address.put("City", "Bogotá");
address.put("Street", "Some street");
person.put("address", address);
String jsonString = person.toJSONString();
// {"address":{"Street":"Some street","City":"Bogotá"},"lastname":"Morales","firstname":"Jonathan"}
// import static com.jayway.restassured.RestAssured.*;
given().contentType("application/json")
.body(jsonString)
.expect().statusCode(200)
.when().post("http://your-rest-service/");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13126 次 |
| 最近记录: |