【问题标题】:junit complete differences between expected and actualjunit 预期和实际之间的完全差异
【发布时间】:2017-05-30 10:48:06
【问题描述】:

我正在 Intelij Idea 上使用 Junit 开发单元测试。当测试失败时,它只记录预期对象和实际对象的哈希码,我应该通过比较它们的字段或在调试模式下跟踪 equals 方法来找到差异,如果 equals 和 hashcode 是由 commons 单行生成的,这将非常令人筋疲力尽builder(然后我应该用虚拟的等于链替换它们,以找到导致问题的字段)。
那么是否有任何工具或东西(我不知道)来打印对象结构的完全差异(至少在第一级而不扩展内部对象)?

【问题讨论】:

  • 请编辑您的问题并添加一个 MCVE 来显示您的问题
  • 工具?不,您只需要知道如何编写 Java。等到 2071 年?这里需要高级人工智能吗?

标签: java unit-testing junit


【解决方案1】:

记录哈希码告诉我你没有覆盖类中的 toString 方法。您可能也没有覆盖 equals 或 hashCode。

您需要阅读"Effective Java" chapter 3

【讨论】:

  • 我已经覆盖了equals和hashCode,但是错过了toString!!,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-23
  • 2020-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多