失敗した場合に追加情報を出力できるように、(少なくとも最初は) try/catch ブロック内でアサーションを構造化してみてください。単体テストの出力でマスクされているテスト自体に問題がある場合、これはより有用な情報を提供することがわかりました。それが問題である場合、おそらく単一のテストに絞り込む必要はありません。
@Test
public void testYourTestName() throws Exception {
try {
//Code to prepare the object to be tested
assertNull("This is my null test", objectToBeTested);
} catch (Exception e) {
String failureMessage = "\n" + e.toString() + "\n";
for (StackTraceElement stackLine : e.getStackTrace()) {
failureMessage += (stackLine.toString() + "\n");
}
fail("Error: " + failureMessage);
}
}
または、 assertEquals テストを使用すると、次のようにもう少し役立つ表示が得られることがわかりました。
assertEquals(null, objectToBeTested);
上記の assertEquals が失敗すると、次のような出力が得られます。
testMyTestName(com.myCompany.myApp.myPath.myTests): 予想:<null> だったが:<java.lang.Object@5c9e4d73>
ところで、あるクラスに存在するテストを 1 つだけ実行する方法はわかりませんが、おわかりのように、特定のクラスのすべてのテストを実行するように絞り込むことができます。com.myCompany.myApp.myPath 名前空間の SomeTestClass にあるテストを実行するには:
http://localhost:4502/system/sling/junit/com.myCompany.myApp.myPath.SomeTestClass.html