JUnitでオブジェクトがクラスのインスタンスであることを表明することは可能ですか?さまざまな理由で、タイプを確認したいオブジェクトがテストに含まれています。Object1のタイプですか、それともObject2のタイプですか?
現在私は持っています:
assertTrue(myObject instanceof Object1);
assertTrue(myObject instanceof Object2);
これは機能しますが、もっと表現力豊かな方法があるかどうか疑問に思っていました。
たとえば次のようなもの:
assertObjectIsClass(myObject, Object1);
私はこれを行うことができます:
assertEquals(myObject.class, Object1.getClass());
よりエレガントで流動的な方法でオブジェクトのタイプをテストできる特定のassertメソッドはありますか?
assertTrue
。assertTrue
と言うだけでexpected true got false
、ハムクレストは言うだろうexpected instanced of XYZ, got instance of ABC
assertTrue(myObject instanceof Object1);
し、assertEquals(myObject.class, Object1.getClass());
実際には異なるテストですか?最初はmyObjectをのサブクラスのインスタンスとして受け入れますが、後者は受け入れObject1
ません。