已关闭。此问题需要details or clarity。它目前不接受回答。
**希望改进此问题?**通过editing this post添加详细信息并阐明问题。
5天前关闭。
Improve this question的
当我测试我的EP并获得JSON响应时,没有精度的BigDecimal值被转换为Integer,我不能期望BigDecimal使用MockMvcResultMatchers.jsonPath。当你有精度时,它被转换为Double,当没有精度时,它被转换为Integer。
我怎么能只期望BigDecimal值,在ResultActions.andExpect的测试中检查它?
下面是一个Java代码的例子:
performGet()
.andDo(print())
.andExpect(status().isOk())
.andExpect(jsonPath("$.data. value", equalTo(expectedValue)));
字符串
1条答案
按热度按时间eagi6jfj1#
这取决于您使用的JSON解析器。最流行的两个是JSONJackson和GSon。对于Jackson,您必须编写一个自定义的反序列化器。这里有一篇关于如何做到这一点的好文章:Getting Started with Custom Deserialization in Jackson。对于GSON,只需搜索类似的方法(我对GSON不太熟悉)