「Androidアプリ テスト技法」第1章
- 作者: 生路茂太,井芹洋輝,神原健一,長谷川孝二,松木晋祐,宮田友美,吉澤毅
- 出版社/メーカー: 秀和システム
- 発売日: 2013/02
- メディア: 単行本
- この商品を含むブログ (2件) を見る
久々のAndroid本。ちょっとずつ読んでみます。
§1 Android テスト基礎
- 予防コスト = 1
- 社内検証&修正コスト = 10
- 流出/外部発見&修正コスト = 100
バグや要求と違う部分の修正は、後になるほど大変になる。可能な限り予防しろというお話。 この辺りは上役やクライアントを説得するためのものなんでしょうか?
テストプロセス
分析、設計、実装、実行、報告のフェーズに分けられる
テスト分析
システムに対し、
- Why:なぜ必要なのか
- Who:誰が使うのか
- Whom:誰に使うのか
- Where:どんな環境で使われるのか
- What:どんな構成なのか
- When:いつからいつまで使われるのか
- How to:どのように使うのか
- How much:これまでにいくら、これからいくらかかるのか
を元に理解をし、どのようなテストが必要になるのかを検討していく。
テスト分析手法には、NGT/VSTeP、HAYST法、ゆもつよメソッド等いろいろある。
完成したシステムに対してどのようなテストを行えば、"充分なテストを行った"と顧客に説明できるかを考えましょう。
テスト設計
「無限にあるテストすべき空間から、現実的にテスト可能な量を切り出す」ための方法論。 仕様ベース、構造ベース、経験ベースの3つのアプローチがある。
テストレベル
テストレベルは役割や成果物の結合状態を表す縦の概念。以下のリストの右側のもの。テストは成果物の結合の度合い(レベル)によってふさわしい粒度と役割がある。
- 実装 -> ユニットテスト (最小の単位のテスト)
- 詳細設計 -> 結合テスト (最小の単位同士を連携させるテスト。実装者の境界を越える部分をテストすると捉えると良いらしい)
- 基本設計 -> システムテスト (顧客の価値を満たす物かどうかのテスト。非機能要求に対するテストもこのレベルで行われることが多い。開発者や専任のテストチームが行う)
- 要求分析 -> 受け入れテスト(要求仕様をみたしているか、他のシステムと連携に不具合がないかどうかのテスト。顧客が行う)
20ページ足らずの概論的な章。なんかの開発手法指南書っぽくて退屈だけど、人に説明する時にはこーゆー言葉の定義とか概念を理解しておくのは大切なんでしょうね。
次章は実践の章。ついてけるのか、あんまり自信がなかったり。