使用 AssertJ 或 JUnit 断言身份

bea*_*u13 3 java junit assertj

编辑二

基本上,问题是关于是否有 AssertJ(首选)或 JUnit 断言:

objA == objB
Run Code Online (Sandbox Code Playgroud)

编辑我

我的测试类 (CUT)扩展了 JAXB 的XmlAdapter. 在解组 XML 文件时,它应该保证相同的对象只存在一次。为了验证这一点,我的测试目前看起来像这样(在示例中,标准 ctor 创建了相等的对象):

MyType obj = cut.unmarshal(new MyType());
assertThat(cut.unmarshal(new MyType()) == obj).isTrue();
Run Code Online (Sandbox Code Playgroud)

有没有办法使用 AssertJ 或 JUnit 显式声明身份?

原帖

我的被测类 (CUT)有一个方法(例如foo),它应该保证返回的对象——相等——只存在一次。目前,我正在使用以下断言语句:

assertThat(cut.foo() == obj).isTrue();
Run Code Online (Sandbox Code Playgroud)

有没有办法使用 AssertJ 或 JUnit 显式声明身份?

chr*_*ke- 5

如果您使用的是 AssertJ,则可以使用该isSameAs方法来比较对象标识:

assertThat(cut.foo()).isSameAs(obj);
Run Code Online (Sandbox Code Playgroud)