junit5 assertequals给了我错误的值

jaxagkaj  于 2021-06-30  发布在  Java
关注(0)|答案(2)|浏览(382)

当我做assert equals时,我得到的是这个,而不是calss的实际值。
资产质量(预期、实际);

Actual: [com.eduardo.test.output@f58d94c2]
Expected: [{result={name="eduardo"}}]

为什么我的物体没有被认出?

jhkqcmku

jhkqcmku1#

在我的对象Map器中,我添加了:

mapper.enable(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES);

在我的构造函数中,我必须添加:public

dummyClass(@JsonProperty("chargeType") String name)
    {
        this.name= name;

    }

这解决了我的问题。

92vpleto

92vpleto2#

你得到了一个物体。这就是你的方法返回的结果。可以将其强制转换为所需对象的类型,也可以Assert属性。
类似assertthat的内容(result.name=expectedname)
但我建议你用pojomatic。。。可以在对象上使用注解@autoproperty并包含以下方法:

@Override
  public boolean equals(Object obj) {
    return Pojomatic.equals(this, obj);
  }

这样你的Assert就会起作用

相关问题