私が試した JUnit のすべてのバージョン (4.8.1 まで) で、assertThat が失敗すると、次のようなエラー メッセージが表示されます。
expected: [describeTo]
got: [オブジェクトの文字列表現]
つまり、Matcher からの不一致の説明ではなく、オブジェクトの toString() が表示されます。org.hamcrest.MatcherAssert.assertThat の assertThat を使用すると、「describeMismatch」が呼び出され、より役立つエラー メッセージが表示されます。
Junit の使い方が間違っているのでしょうか、それとも現在、私がやりたいことができる JUnit のバージョンがありませんか? それでは、ほとんどの人は Hamcrest assertThat を使用しますか?