仕様書の読み方がわからない!
前回(第2回)のながれ
新入社員のA君,やみくもなテストとやるべきテストの違いを理解し,ソフトウェアテストには事前の準備が大切だということを知りました。
A君は,ソフトウェアテストは単純にプログラムを動かすだけではなく,
- 明確な目的を持つこと
- その目的を達成するために事前の準備が必要であること
を学習しました。では,テストの準備とはどういうことをしなければならないでしょうか。
A君はその後,K先輩に質問を行い,次のようなアドバイスをもらいました。
- テストの実行の前に,テストケースを作成する
- テストの実行は,テストケースに基づいて行う
次に,テストケースという耳慣れない言葉を聞いたA君は,更に質問をしました。すると,K先輩は次のような説明をしてくれました。
- テストケースは,操作の手順や検証ポイント,想定される実行結果などを記述したものであること
- テストケースはテストベース(※)を参照して作成する
- テストベースを入手したら,内容をよく理解すること
- ※ テストベースとはテストの情報源となるもの。設計者が作成した要件定義書や仕様書などがある。
- A君「なるほど,そうするとまずはテストベースを入手しなきゃ!」
そういえば,A君はM先輩から仕様書を受け取っていたのでした。A君はこの仕様書をテストベースとすることにしました。
- A君「じゃぁこれを参考にしてテストケースを作るぞ!」
A君は早速テストケースの作成に取り掛かりました。
(ふむふむ,ここに書かれていることを確認するようなテストケースを作ればいいんだな)
…数時間後
悪戦苦闘しながらも何とかテストケースを作りあげたA君。K先輩に作ったテストケースを確認してもらうことにしました。
- A君「教えていただいたとおり,テストベースを参考にテストケースを作りました!」
- K先輩「どれどれ…」
K先輩はA君から受け取ったテストケースに一通り目を通し,静かにこう言いました。
- K先輩「これ本当にちゃんと仕様書読んだかい?」
A君は目を丸くしてしまいました。自分なりにしっかりと読み,見直しも行っています。実はA君,このテストケースのできばえに自信があり,「初めてにしては良くできているぞ!」とほめてもらえるものだと思い込んでいたのでした。
- A君「はい,気をつけて読んだつもりなんですが…」
- K先輩「これじゃ,仕様書をただ写しただけにしか見えないよ。もう一度よく考えてごらん。」
K先輩はそう言うと,作り直すようにA君に指示を出しました。
(いったいどこが悪かったんだろう…)
A君は,慣れないなりに気をつけて読んだはずですが,結果としてK先輩から見ると「使えないテストケース」を作ったことになります。
A君は,手元の仕様書を見つめたまま,悩みこんでしまいました。
テストにおける仕様書の読み方を教わりましたか?
テストの仕事を任されたとき,先輩から仕様書の読み方を教わりましたか? 残念ながら読み方を教わることはほとんどないでしょう。
この仕様書,プログラムを書くときと同じように読んでいると,テストケースを書くのに苦労するかもしれません。なぜならば,
プログラムを書くときとテストケースを書くときでは仕様書の読み方が違う
からです。
また,仕様書を読んでからいきなりテストケースを書いていませんか? 先輩が過去に書いたテスト仕様書を参考に(コピー&ペーストともいいます)書いたりしていませんか?
過去の成果物を活用して仕事を早く終わらせることは大切です。しかし,新人の皆さんにとって,今は基礎を固めるという大事な時期でもあります。基礎固めをおろそかにしてしまうと後々つらい目に遭ってしまいます。テストにおける基礎固めとはテスト設計です。
テストにも「設計」があります。新人の皆さんが第一に覚えて,身に付けなければならないことは,テスト設計なのです。
第3回は,仕様書の読み解き方と,テスト設計の初歩について説明します。

