テストケースを書くとき、一つのテストメソッド内で条件を変えながらループさせて assert したいことがありますが、assert に失敗した場合に残りのテストが実行されない点と、どこで失敗したのかわかりにくい点が困ります。TDD のアンチパターン (http://www.hyuki.com/yukiwiki/wiki.cgi?TddAntiPatterns) で言うところの “巨人” です。 JUnit4 なら Parameterized を使うと解決できます。 テストデータを返すメソッドに @Parameters を付けておきます。 @Parameters public static Collection data() { return Arrays.asList(new Object[][] { { 0, 0 }, { 1, 1 }, { 2, 1 }, { 3, 2 }, {