テストリーダへの足がかり、最初の一歩

第10回テスト実行(前編)

読者の皆さんこんにちは、⁠テストリーダへの足がかり、最初の一歩」と題したこの連載も10回目となりました。今回は実際にテストケースを実行する「テスト実行」を取り上げます。

テストケースの実行は、何も考えずに手を動かすだけの作業ではありません。リーダの立場としてはテストの進捗状況やその状況からのコントロールという視点が必要になります。また、テストケースの消化数だけを考えておけばいいというわけでもありません。

さて、さっそく、今回も中山君の例で考えていきましょう。

【今回の登場人物】

大塚先輩:
入社10年目。5年前に柏田マネジャーと一緒にソフトウェアテスト事業を立ち上げた。カメラが趣味で、暇さえあれば写真を撮りに出かける。
中山君:
入社5年目。本連載の主人公。入社以来ソフトウェアテスト一筋で経験を積んできた。そろそろ大きい仕事をしたいと考えている。
小川君:
入社2年目。新人研修後、その有望さから半年間顧客先に常駐。テスト業務の他、設計作業も経験を積んできた。趣味はベースで、定期的に仲間とライブを行うなど仕事と趣味を両立している。
千秋ちゃん:
入社2年目。小川君の同期で、開発部門所属。今までコーディングと単体テストは経験があるが、システムテストに関わるのは初めての経験。趣味は自分磨き。

テスト実行

前回のテスト実装の工程で、中山君は新規メンバの受け入れやテストケースの作成方針について、大失敗を犯してしまいました。その結果、プロジェクトの体制が崩壊しそうになりました。見かねた大塚先輩が介入し、立て直しを命じました。

中山君は大塚先輩の指示に従い、一度作業を止め、現在のプロジェクトの問題点を全員で腹を割って話し合う場を持ちました。あらゆる点についてざっくばらんに議論した結果、メンバ間の意思の疎通が図られ、お互いのことをよく知ることができました。このことが士気の向上やコミュニケーションの醸成につながり、プロジェクトは以前よりもいい雰囲気になり、なんとか立て直すことができました。

以後はメンバの協力もありオンスケジュールまで挽回することができました。中山君はメンバをまとめるということの難しさを痛感し、またメンバの協力に大きな感謝の気持ちを持つに至りました。人に支えられて業務ができているということに気がついた中山君はまた一つ成長したといえるでしょう。

さて、いよいよテストケースを実行する行程「テスト実行」に入ることになりました。

テスト実行では、テスト実装で作成したテストケースを実際に実行していきます。その際、その進捗状況の記録を行ったり、万が一バグが発生した場合にインシデントレポートを作成したりします。リーダという立場ではこの進捗状況のモニタとコントロールを行います。また、インシデントレポートに伴うさまざまな作業の調整を、設計部門などの関係部門と行う必要があります。

中山君:
プロジェクトの立て直しもできたし、スケジュールも挽回できた。本当によかったよ…。
千秋:
これも私が残業してあげたからでしょ。おかげで、この前はエステをキャンセルしたんだから感謝しなさいよ。
中山君:
うっ、ご、ごめんよ。
中山君:
あっそうだ!この埋め合わせをさせてよ。ちょうど近くにワインの美味しいお店ができたんだ。きっと千秋ちゃんに気に入ってもらえると思うな。
千秋:
…別にいいわ。これも仕事だし。それにワインはもう飽きちゃったし。

どさくさにまぎれてデートに誘おうとして失敗した中山君が微妙な表情をしているところに、大塚先輩が小川君と連れだって出勤してきました。

大塚先輩:
いよいよ今日からテスト実行だけど、問題はないかい?
中山君:
はい、大丈夫です。皆さんが協力してくれたおかげでスケジュールもなんとかなりましたし、テスト実行は僕もたくさんやってきましたから大丈夫です!
大塚先輩:
(本当かなぁ…。今回も心配だな。手を打っておくか…)

中山君の調子がいい性格をこれまでにいやというほど目にしてきた大塚先輩は、中山君が何をするのかを注意してみることにしました。

小川君:
さて、ではさっそく進めていきましょうか。
大塚先輩:
じゃぁ、俺は別プロジェクトの面倒を見てくるから、進めておいてね。中山君、自分がリーダであることをもう一度意識して、何をすべきかをよく考えること。そうしないとまた同じ失敗をしてしまうから。俺はちょっと心配だよ。
中山君:
はい!まかせてください!

やはり調子がいい中山君。不安が膨らんでくるのを感じながらも、大塚先輩は別プロジェクトの状況を見るために、エレベーターホールに向かって行ってしまいました。

中山君:
では、さっそくテストを実行していこう!
小川君:
基本的には今日のところは、自分が作成したテストケースから実行するという方針でしたね?
千秋:
じゃあ、それぞれ個別にやっていくってこと?
小川君:
うん。できるだけ個別に作業できるようにテストケースの実装担当も分けたし、当初はそのほうが能率がいいとの判断なんだよ。
中山君:
そういったわけで、とりあえず今日1日やって、そうだなぁ…15時に会議室で状況を確認するということにしよう。

小川君の個別作業

さて、個別の作業となってきて自席に戻ってきた小川君。さっそくテストを開始することになりました。

小川君:
じゃあ、まずは味見的にこの中でもクリティカルなケースからやっていこうかな。そうすると、実行環境はこのパターンを使うか… 環境を復元してと…。

小川君は順調に作業を始めました。そうして1時間もしたところで、バグがヒットしました。

小川君:
お、さっそくバグが出たな。インシデントレポートに書いておかないと。
小川君:
(類似のケースも試しておくかな。でも、このバグが出るってことは、あのケースを先に実行して動きを見ておくか…)

小川君は、あれこれいろいろと呟きながら、手を動かし続けるのでした。

千秋ちゃんの個別作業

千秋:
さてと、今日こそは早く帰りたいからサクサク終わらせたいわね。順番に片づけていこうかしらね。

千秋ちゃんは、リストの上から順番にテストケースを実行しはじめました。しばらくは特に大きな問題もなく、快調にテストケースは消化されていったのですが・・・。

千秋:
…あれ? これって、このPCだけじゃ実行できないじゃない。
千秋:
ハードだけじゃないわね。ソフトも足りてない。なにこれ、あの人、また環境準備してくれてないじゃない。…しょうがない。今から準備するしかないわね。

そう呟くと、千秋ちゃんはプロジェクトルームに必要とするハードやソフトを探しに席を立ちました。

中山君の個別作業

中山君:
よしよし、今回のソフトは結構品質が高いな。テストケースの消化スピードも快調だよ。

実は、中山君に割り当てられているテストケースは実行難易度も低く、バグの発見率も少ないと見込まれるものです。テストの実行というタスクの他にリーダとして進捗管理のタスクもこなさないといけないことから、大塚先輩と小川君が気をまわして分担していたのでした。

中山君:
この調子でいくと、明日の予定分くらいまでは消化できるかも。
中山君:
皆はどうかなぁ。進んでいるといいんだけど…。そういえば全体の量はどれくらいあるんだっけ。まぁ消化数だけヒアリングしておけば大丈夫かな。

状況確認会議

中山君:
じゃあ、みんなの状況を報告してくれないかな。
小川君:
本日はテストケースを120件消化しました。うち15件がバグと思われます。インシデントレポートはフォーマットをいただいていないので、以前のプロジェクトで使っていた書式をカスタマイズして作っておきました。
千秋:
私は18件消化。
中山君:
あれ、妙に少ないんじゃない?
千秋:
しょうがないわよ。だって実行環境が整ってなくて、インストール作業してたんだから。
中山君:
まずいなぁ、予定の進捗よりも遅れ気味になっちゃうよ。
小川君:
現在の状況ですが、計画に現状をマッピングしましょう。テストケース消化率などの管理システムを教えてください。
中山君:
え?システム? テストケースリストの何ページまで進んでるかでわかるんじゃない?
小川君:
中山さん、それじゃ細かい状況把握は難しいですよ。これじゃテストケースの実行がコントロールできませんから、後々大変になると思います。
中山君:

図1 小川君のテスト結果ログ
図1 小川君のテスト結果ログ
※ 一部のみ掲載
図2 小川君が作ったインシデントレポート
図2 小川君が作ったインシデントレポート

なにやら問題山積みです。今回も中山君は適切な指示を出していませんでした。また、リーダとして行うべき作業に気が回っていませんでした。

このテスト実行開始にあたり、中山君はいったいどうすべきだったでしょうか。

また、小川君の作ったテスト結果のログと、インシデントレポートには問題があります。チームリーダとしてみた場合、いったいどのような問題があるでしょうか。

皆さんも自分の業務と照らし合わせながら、後編まで考えてみてください。

おすすめ記事

記事・ニュース一覧