JUnit実践入門

サポートページ

ダウンロード

本書で使用したサンプルコード、および巻頭・巻末付録をダウンロードできます。

サンプルコードの利用方法については、付属のREADMEファイルをご覧ください。

巻頭・巻末付録についてはPDFとPNG画像を用意しました。印刷して利用する、壁紙として利用するなど、ご自由にお使いください。

MercurialやGitをお使いの方は、下記リポジトリからも取得できます。

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに、ご迷惑をおかけしたことを深くお詫び申し上げます。

(2013年9月4日更新)

P.4 「ライセンス」の2行目(第2刷以降、修正済み)

誤 EPL(Ecilpse Public License)
正 EPL(Eclipse Public License)

P.4 本文、下から2行目(第2刷以降、修正済み)

誤 Eclipse 3.6.2 Indigo
正 Eclipse 3.7.2 Indigo

P.5 上から3行目(第2刷以降、修正済み)

誤 Eclipse 3.6.2 Indigo
正 Eclipse 3.7.2 Indigo

P.35 コラム「テストケースとドキュメント」の脚注b(第3刷以降、修正済み)

誤 注b Martin Fowler著/児玉信、友野晶夫、~
正 注b Martin Fowler著/児玉公信、友野晶夫、~

P.76 「テスト失敗メッセージの確認」の3行目(第3刷以降、修正済み)

誤 assertThat(new Data(), is(dateOf(2012, 1, 12)));
正 assertThat(new Data(), is(dateOf(2011, 2, 10)));

P.174 脚注2(第3刷以降、修正済み)

誤 注b Martin Fowler著/児玉信、友野晶夫、~
正 注b Martin Fowler著/児玉公信、友野晶夫、~

P.186 リスト11.18の3、4行目(第2刷以降、修正済み)

誤
public class UserDaoStub implements UserDao {
    @Override
    public User find(String userId) throws {
        new UserNotFoundException("connection error");
    }
}
正
public class UserDaoStub implements UserDao {
    @Override
    public User find(String userId) throws UserNotFoundException {
        throw new UserNotFoundException("connection error");
    }
}

P.196 リスト11.29の3行目(第2刷以降、修正済み)

誤
List list = new ArrayList();
List spy = spy(list);
when(mock.size()).thenReturn(100);
spy.add("Hello");
正
List list = new ArrayList();
List spy = spy(list);
when(spy.size()).thenReturn(100);
spy.add("Hello");

P.239 リスト13.7の上から16、17行目(第2刷以降、修正済み)

誤
"ユーザIDとパスワードを正しく入力してください" :
"ようこそ、" + authUser.userId + "さん";
正
"ようこそ、" + authUser.userId + "さん" :
"ユーザIDとパスワードを正しく入力してください";

P.259 下から2行目(第2刷以降、修正済み)

誤 実行状態を見えやすくなるため
正 実行状態を見えやすくするため

P.264 「ブランチカウンタ」の3行目(第3刷以降、修正済み)

記述に間違いがあります。一般的にC1カバレッジは例外処理なども分岐と見なしますが、EclEMMAで利用しているJaCoCoでは例外処理を分岐と見なしません。

誤 try-catch構文なども含め、コードに分岐がいくつあるかをカウントし、実行されたブロックの割合をカバレッジとして測定します。
正 if文やswitch文などの分岐をカウントし、実行された分岐の割合をカバレッジとして測定します。ただし、EclEMMAでは例外処理を分岐と見なしません。

P.286 「ソースコードのエンコーディング設定」の6行目(第2刷以降、修正済み)

誤 project.build.sourceEncofingタグ
正 project.build.sourceEncodingタグ

P.328 ページ中段のボックス内、下から2行目(第2刷以降、修正済み)

誤 もし 3と4を加算したならば
正 もし 3と4を加算した

P.362 「テストケース」の箇条書きの最後の項目(第3刷以降、修正済み)

誤 Itemが1つ追加されている状態で、addで同じItemオブジェクトを追加すると~
正 Itemが1つ追加されている状態で、addで異なるItemオブジェクトを追加すると~

P.378 リスト19.9の5行目(第3刷以降、修正済み)

誤
String expected = "Hello" + ls + "World";
正
String expected = "Hello" + ls + "World" + ls;

P.412 「A.1JDKのセットアップ」の2行目(第3刷以降、修正済み)

誤 Java Runtime Enviroment
正 Java Runtime Environment

P.421 「テキストファイルのエンコーディング設定」の7行目(第2刷以降、修正済み)

誤 「テスト・ファイルのエンコード」
正 「テキスト・ファイルのエンコード」

巻末付録(第2刷以降、修正済み)

誤 ソースメニューの表示 Ctrl + Alt + S
リファクタリングメニューの表示 Ctrl + Alt + T
正 ソースメニューの表示 Shift + Alt + S
リファクタリングメニューの表示 Shift + Alt + T