片桐 一宗 著
                                                                            
単体テストは、アプリケーションの品質を確保するだけでなく、開発を効率的で楽しくしてくれます。しかし、納期に追われる現場では、単体テストを試したり学んだりする時間がなかなかとれません。
そこで、本書では以下のことを目的に執筆しました。
・-経験ゼロの人でも無理なく身につく
・-多忙な現場でも実践できて効果が見える
・-テストを継続できて開発も楽しくなる
第1部 単体テストは侮れない
  
  1 超多忙な現場になぜ単体テストを勧めるのか
  1-1 テストの基礎知識
  1-2 テストとシステムの品質
  1-3 「後でまとめてテストする」ことがいけない理由
  1-4 テストクラスを書くことで得られるメリット
  1-5 仕様変更とテストクラスとの関係
  
  2 Webアプリケーションの単体テストをよく知ろう
  2-1 テストに時間がかかる理由
  2-2 単体テストを楽にするには
  2-3 十分な単体テストを実施するために
第2部 行なう価値の高い単体テスト
  
  3 EclipseとJUnitで作るテストクラス
  3-1 テストクラスの基本形
  3-2 テストメソッドの定義方法
  3-3 テストの結果を判断するメソッド
  3-4 テストクラスの作成と実行
  
  4 DBアクセスの単体テスト
  4-1 DbUnitとは
  4-2 DbUnitを使用したテストの手順
  4-3 SELECT文を発行するメソッドのテスト
  4-4 INSERT文を発行するメソッドのテスト
  4-5 UPDATE/DELETE文を発行するメソッドのテスト
  
  5 DBアクセスのテストケースを減らす方法
  5-1 テストしやすいテーブル設計
  5-2 テスト対象メソッドでの工夫
  5-3 保守面からテスト容易性を高める
  
  6 ビジネスロジックと外部リソースアクセスのテスト
  6-1 ビジネスロジックのテスト
  6-2 依存する実クラスを使用するテスト
  6-3 外部リソースへアクセスする処理のテスト
  
  7 外部システム連携と画面側のテスト
  7-1 外部システムと連携する単体テスト
  7-2 JMockitの使い方
  7-3 EasyMockの使い方
  7-4 画面側の単体テスト
第3部 継続的にテストをするために
  
  8 実装前にテストを意識する
  8-1 よいテストの条件
  8-2 テストしやすいソフトウェアアーキテクチャ
  
  9 テストを意識した開発のポイント
  9-1 引数からテストをしやすくする
  9-2 システム日付を扱うメソッドのテスト
  9-3 発見しづらいバグを作らない
  9-4 静的解析ツールの使用
  
  10 さらにテストを省力化するポイント
  10-1 車輪の再発明を避ける
  10-2 単体テストとバグ発生時の対応
  10-3 テストクラスからのファイルアクセス
  
  11 ビルド&テストを自動化する環境の構築
  11-1 開発者ごとにDBスキーマを付与
  11-2 継続的インテグレーションの実現
  11-3 ビルドサーバーの構築
  11-4 ジョブの設定
  11-5 ジョブの起動
  11-6 開発環境は早めに準備しよう
付録(ツールプラグイン・サンプルのセットアップ)
  01 Eclipseと単体テスト用ツールのインストール
  02 Eclipseサンプルプロジェクトのインポート
  03 EMMAを使用したStrutsアプリケーションのカバレッジ取得
付属データはこちら
        内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
        
        正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
        その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
      
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
      書影(表紙画像)以外のご利用については、こちらからお問い合わせください。
keint さん
2021-11-19
xUnit系の自動単体テスト環境導入について、Javaの業務システム開発を前提として解説されている。特に単体テストを始めるにあたって壁となりそうなDB関係の単体テスト方法など役立ちそうな事項がコンパクトに纏まっている。 ただし、Java以外の言語を使っている人は一般的なことを述べている箇所やコラム等しか参考にならないため、他の書籍やツールの解説を当たらないと環境構築や単体テスト導入には厳しいと感じた。
maya さん
2017-10-09
コードはjavaだが、単体テストの概念は学べる。 DBのテストとかいいね
nrk_baby さん
2016-08-07
テスト一般というよりはかなりJUnit寄りの内容。