2 回答
TA贡献1993条经验 获得超5个赞
我想测试时间戳字段是否为 OffsetDateTime 数据类型。
当然。这里有点猜测,但我认为你想要/打算做什么:
编写一个单元测试,表明你的 POJO/DTO 中的注释按预期工作......
解析一些 JSON 字符串时
因此,这里的重点是:
你寻找一些你认为有效的示例 JSON 数据
然后编写一个单元测试,使用 jackson 将该 JSON 字符串反序列化为 DTO 类的一个实例
然后你使用一个或多个断言来检查新创建的字段
OrderDTO
要添加更多背景信息:请记住,您只在此处定义了一个数据持有者对象。您的 DTO 没有任何您可以测试的行为。唯一值得在这里测试的是:
当您
new()
在 Java 中执行此操作并手动填充此类 dto 的字段并序列化为 JSON 时,您可以检查字符串是否符合预期或者,如前所述,反过来:您可以对JSON 字符串进行硬编码,对其进行反序列化,然后验证/断言您期望的属性(基于您对传入 JSON 字符串的了解)确实出现在您的 dto中.
最后:如果您没有合适的“输入”JSON 字符串,那么危险但有效的替代方法是:首先编写将已知对象序列化为 JSON 字符串的测试用例。然后反序列化该字符串,并确保反序列化的 dto 与您序列化的匹配。
TA贡献1887条经验 获得超5个赞
你想在哪里/什么时候验证/测试它?您可以使用 bean 验证来验证 pojo 的字段。您也可以为此编写自己的验证器。如何进行 bean 验证:https://www.baeldung.com/javax-validation 使用 spring 进行自定义 bean 验证的示例: https: //www.baeldung.com/spring-mvc-custom-validator
添加回答
举报