特定のオブジェクトがMockito模擬であるかどうかをコードで伝えることは可能ですか?オブジェクトがMockitoモックであるかどうかをどのように確認できますか?
私がこれをやりたいのは、偽装が使用されているときに別のエラーメッセージを返すことです。これは他の開発者に、あらかじめ用意されたモックを使用して、モック自体を作成するのではなく、便利な方法でコールに応答するように設定されていることを示唆するために使用されます。
私が持っている最高のものはobject.getClass().getName().contains("EnhancerByMockitoWithCGLIB")
ですが、これはハッキリです。
あなたの答えに続いて、[MockUtilのソース](https://fisheye2.atlassian.com/browse/mockito/trunk/src/org/mockito/internal/util/MockUtil.java?)を見ました。 r = 2020)、そして私的な 'isMockitoMock'メソッドのすぐ下に、使用できるように見えるpublic' isMock'メソッドがあります。私はMockitoのメーリングリストに投稿して、org.mockito.internal.utilのメソッドを自分で呼び出すことをお勧めします。 – mikej
'org.mockito.internal.util'パッケージの意図の1つは、Mockitoチームがこのパッケージ内の何かを新しいバージョンで変更する可能性があるということです。このパッケージを使用すると、将来的にテストが破綻する可能性があります。しかし、私たちがこの特定の方法を取り除くことは非常にありそうもないので、使用するのがかなり安全だと言います。 –
@mikej:+1、何とか私はそれを逃した、ありがとう!私は古い答えを削除し、代わりにあなたの提案を入れてください。あなたが気にしないことを願っています。 –