JUnit có thể khẳng định một đối tượng là một thể hiện của một lớp không? Vì nhiều lý do tôi có một đối tượng trong bài kiểm tra của mình mà tôi muốn kiểm tra loại. Nó là một loại Object1 hay một loại Object2?
Hiện tại tôi có:
assertTrue(myObject instanceof Object1);
assertTrue(myObject instanceof Object2);
Điều này hoạt động nhưng tôi đã tự hỏi nếu có một cách biểu cảm hơn để làm điều này.
Ví dụ như một cái gì đó như:
assertObjectIsClass(myObject, Object1);
Tôi có thể làm điều này:
assertEquals(myObject.class, Object1.getClass());
Có một phương pháp khẳng định cụ thể nào cho phép tôi kiểm tra một loại đối tượng một cách thanh lịch, trôi chảy hơn không?
assertTrue
. assertTrue
sẽ chỉ nói expected true got false
, Hamcrest sẽ nóiexpected instanced of XYZ, got instance of ABC
assertTrue(myObject instanceof Object1);
vàassertEquals(myObject.class, Object1.getClass());
thực sự là các bài kiểm tra khác nhau? Cái đầu tiên chấp nhận myObject là một thể hiện của một lớp conObject1
, cái sau không.