JUnitのテストケースに関するルールセットです。
public static でない suite() メソッドを検出します。
JUnitメソッドのありがちなメソッド名の記述ミスを検出します。
public void setup() {} // 正しくは setUp
JUnitの各種アサート文で、メッセージ無で呼び出している箇所を検出します。
assertEquals("foo", "bar"); // アサートメッセージが無い。以下のようにする
assertEquals("Foo does not equals bar", "foo", "bar");
アサート文を一つも持たないテストを検出します。
TestCase を実装していないのに、Testで終わる名称を持つクラスを検出します。
テストクラス以外にこういったクラス名を付けると紛らわしくなります。
不必要な boolean アサートを検出します。
assertTrue(true);
equals アサートの代わりに boolean アサートを使用している箇所を検出します。
assertTrue(a.equals(b)); // これは以下のようにした方が良い
assertEquals("a should equals b", a, b);
same アサートの代わりに boolean アサートを使用している箇所を検出します。
assertTrue(a == b); // これは以下のようにした方が良い assertSame(a, b);
null アサートの代わりに true アサートを使用している箇所を検出します。
assertTrue(a == null); // これは以下のようにした方が良い assertNull(a);
assertTrue(!expr) のような記述を検出します。
assertTrue(!expr); // assertFalse(expr)の方が自然です