ビューティフルテスティング

―ソフトウェアテストの美しい実践

[cover photo]
TOPICS
Programming , Business/Essay
発行年月日
PRINT LENGTH
376
ISBN
978-4-87311-474-3
原書
Beautiful Testing
FORMAT
PDF
Ebook
3,520円
Ebookを購入する

本書は、さまざまな手法や規模、異なった立場でソフトウェアテストに携わってきたプロフェッショナルたちが編み出したテストの極意、「美しいテスト」について語るものです。
豊富な経験やユニークな見解を持つ人物に焦点を当てた「テスター」、試行錯誤の末に到達した「プロセス」、すばやく効率的に行うための「ツール」という3部構成で、書き手自らが確立したテストの極意を実例を挙げて分かりやすく解説します。日本語版では、山浦恒央氏による組み込み系ソフトウェアについてのエッセイを収録。

目次

監訳者まえがき
はじめに

第1部 ビューティフルテスター

1章 テスターはお役に立っていますか?
リンダ・ウィルキンソン(Linda Wilkinson)

2章 ビューティフルテスティングは、ステークホルダーを満足させる
レックス・ブラック(Rex Black)
    誰に対するテストなのか?
    何がステークホルダーを満足させるのか?
    外面的な美しさとは?
    内面的な美しさとは?
    結論

3章 オープンソースQAコミュニティの構築
マーチン・シュレーダー(Martin Schrder)
クリント・タルバート(Clint Talbert)
    コミュニケーション
    ボランティア
    調整(コーディネーション)
    イベント
    結論

4章 コラボレーションこそビューティフルな性能テストの要
スコット・バーバー(Scott Barber)
    背景
    100%を達成するなどあり得ない
    メモリリークではなかった
    負荷を処理できない? じゃあUIを変えればいい
    ネットワークであるはずがない
    まとめ

第2部 ビューティフルプロセス

5章 素晴らしき哉:ファズテスティングでオフィスソフトウェアの信頼性を向上させよう
カムラン・カーン(Kamran Khan)
    ユーザの期待
    ファジングとは?
    ファジングを実施する理由
    ファズテスティング
    将来的な検討事項

6章 バグ管理とテストケースの有効性
エミリー・チェン(Emily Chen)
ブライアン・ニッツ(Brian Nitz)
    バグ管理
    欠陥管理のファーストステップは、その定義から
    テストケース有効性(TCE)
    OpenSolarisデスクトップチームの事例
    結論
    謝辞
    参考文献

7章 美しきXMPPテスティング
レムコ・トロンソン(Remko Tron�・on)
    はじめに
    XMPP 101
    XMPPプロトコルのテスティング
    シンプルなリクエスト/レスポンスプロトコルのユニットテスト
    複数階層を持つプロトコルのユニットテスト
    セッション初期化のテスティング
    相互運用性テスティングの自動化
    ダイヤモンドの原石:XML妥当性のテスティング
    結論
    参考文献

8章 ビューティフルな大規模テストの自動化
アラン・ページ(Alan Page)
    はじめに
    大規模なテスト自動化とは?
    最初のステップ
    自動化テストとテストケース管理
    テストラボの自動化
    テストのディストリビューション
    不合格解析
    報告
    すべてをつなぎ合わせる

9章 醜いよりも美しいほうがいい
ニール・ノーウィッツ(Neal Norwitz)
ミッシェル・レベック(Michelle Levesque)
ジェフリー・ヤスキン(Jeffrey Yasskin)
    安定性の価値
    正確性の確保
    結論

10章 乱数ジェネレータのテスティング
ジョン・D・クック(John D. Cook)
    何が乱数ジェネレータのテストを繊細にしているのか?
    一様乱数ジェネレータ
    非一様乱数ジェネレータ
    一連のテスト
    結論

11章 変更中心のテスティング
ムラーリ・ナンディガマ(Murali Nandigama)
    ドキュメント駆動、変更中心テスティングのフレームワークの設定方法
    複雑なコード開発モデルにおける変更中心テスティング
    これまでのおさらい
    結論

12章 利用時のソフトウェア
カレン・N・ジョンソン(Karen N. Johnson)
    自らの仕事とのつながり
    美しさは内側から
    異なる観点を加える
    探索的、アドホック、スクリプトテスティング
    マルチユーザテスト
    サイエンスラボ
    実利用をシミュレートする
    規制対象のソフトウェアのテスト
    おわりに

13章 ソフトウェア開発は創造的なプロセスだ
クリス・マクマホン(Chris McMahon)
    パフォーマンスとしてのアジャイル開発
    練習、リハーサル、演奏
    言葉にできないことを評価する
    2つの有用なツール
    ソフトウェアテスティングのムーブメント
    アジャイルテスティングの美しさ
    QAは悪ではない
    美しさは、この仕事の本質
    参考文献

14章 テスト駆動型開発:美しさの新しい標準へ
ジェニッタ・アンドレア(Jennitta Andrea)
    比率と均衡としての美しさ
    アジャイル:新たな比率と均衡
    テスト駆動型開発
    実例とテスト
    読みやすい実例
    恒久的な要件
    テスト可能な設計
    ツールのサポート
    チーム内でのコラボレーション
    TDDの美しさを経験する
    参考文献

15章 ビジネスを成功に導く礎となるビューティフルテスティング
リサ・クリスピン(Lisa Crispin)
    チーム全体によるアプローチ
    テストの自動化
    テストによる開発の促進
    価値の提供
    サクセスストーリー
    おわりに

16章 Socialtextでガラスの玉ねぎの皮をむく
マシュー・ヒューサー(Matthew Heusser)
    ビジネスではなく、個人の問題
    テスターが舞台にとどまることで、舞台は真の美しさをまとい始める
    こっちへおいでよ、お楽しみはこれからだ
    自動化テストが機能しない場合
    Socialtextの内部
    バランスのとれたアプローチ
    振り返りとプロセス改善
    パズルの最後のピース
    謝辞

17章 美しいテストは効率がよいテスト
アダム・グーチャー(Adam Goucher)
    SLIME
    スクリプティング
    開発者のメモを活用する
    オラクルとテストデータ生成
    マインドマップ
    効率の達成

第3部 ビューティフルツール

18章 バグ検出のためにバグを埋め込む:美しいミューテーションテスト
アンドレアス・ツェラー(Andreas Zeller)
デイビッド・シューラー(David Schuler)
    テストスイートの品質を評価する
    番人を監視する
    AspectJの例
    同値ミュータント
    影響に注目する
    Javalancheフレームワーク
    その他のこと
    謝辞
    参考文献

19章 リファレンステストを美しく
クリント・タルバート(Clint Talbert)
    リファレンステストの構造
    リファレンステストの拡張性
    コミュニティの構築

20章 Clam Anti-Virus:オープンツールによるオープンソースのテスティング
トマシュ・コジム(Tomasz Kojm)
    Clam Anti-Virusプロジェクト
    テスト手法
    まとめ
    謝辞

21章 WindmillによるWebアプリケーションのテスティング
アダム・クリスチャン(Adam Christian)
    はじめに
    概要
    テストの作成
    プロジェクト
    比較
    結論
    参考文献

22章 100万Webページのテスティング
ティム・ライリー(Tim Riley)
    はじめに……
    ツールのマージと進化
    現状
    まとめ
    謝辞

23章 複数マシンシナリオでのネットワークサービスのテスティング
アイザック・クレレンシア(Isaac Clerencia)
    eBoxでの先進的なテストツールの必要性
    eBox QAプロセス改善のためのANSTEの開発
    eBoxでのANSTEの使用方法
    他のプロジェクトがANSTEからメリットを得るには

日本語版付録 組み込み系ソフトウェアのテスト技法は進化したか?
山浦 恒央(やまうら つねお)
    はじめに
    ソフトウェアの生産性の進化と組み込み系ソフトウェア
    テスト技法の進化と組み込み系ソフトウェア
    ソフトウェア設計法の進化と組み込み系ソフトウェア
    OSの進化と組み込み系ソフトウェア
    組み込み系ソフトウェアの特徴
    おわりに


著者・編者紹介
索引