Apakah mungkin di JUnit untuk menegaskan suatu objek adalah turunan dari kelas? Karena berbagai alasan, saya memiliki objek dalam pengujian yang ingin saya periksa jenisnya. Apakah itu tipe Object1 atau tipe Object2?
Saat ini saya punya:
assertTrue(myObject instanceof Object1);
assertTrue(myObject instanceof Object2);
Ini bekerja tetapi saya bertanya-tanya apakah ada cara yang lebih ekspresif untuk melakukan ini.
Misalnya sesuatu seperti:
assertObjectIsClass(myObject, Object1);
Saya bisa melakukan ini:
assertEquals(myObject.class, Object1.getClass());
Apakah ada metode penegasan khusus yang memungkinkan saya untuk menguji jenis objek dengan cara yang lebih elegan dan lancar?
assertTrue
. assertTrue
hanya akan mengatakan expected true got false
, Hamcrest akan mengatakanexpected instanced of XYZ, got instance of ABC
assertTrue(myObject instanceof Object1);
danassertEquals(myObject.class, Object1.getClass());
sebenarnya tes yang berbeda? Yang pertama menerima myObject menjadi turunan dari subclassObject1
, yang kemudian tidak.