我在使用RestAssured的项目中同时拥有GSON和Jackson,我想使用GSON。官方文档没有提供明确的例子。我尝试了几个配置,但似乎没有用。这是我的配置,我错过了什么吗?
RestAssured.config = RestAssuredConfig.config()
.decoderConfig(new DecoderConfig("UTF-8"))
.encoderConfig(new EncoderConfig("UTF-8", "UTF-8"))
.objectMapperConfig(new ObjectMapperConfig(GSON));
答案 0 :(得分:2)
嗯,作为Rest Assured documentation states,技术的顺序是:
此外,还描述了使用explicit serializer或deserializer。
序列化:
Message message = new Message();
message.setMessage("My messagee");
given().
body(message, ObjectMapperType.GSON).
when().
post("/message");
反序列化:
Message message = get("/message").as(Message.class, ObjectMapperType.GSON);
答案 1 :(得分:1)
在我的项目中,我通过包装原始的RestAssured.given
方法来解决了该问题
public static RequestSpecification given() {
return RestAssured.given()
.config(RestAssured.config()
.objectMapperConfig(new ObjectMapperConfig(ObjectMapperType.GSON)));
}
答案 2 :(得分:0)
这在Kotlin对我有用:
RestAssured.config = RestAssuredConfig.config().objectMapperConfig(objectMapperConfig().defaultObjectMapperType(ObjectMapperType.GSON))