システム開発のテスト工程で心がけていること5つ


Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/aksoft2011/www/dfour/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524
Pocket
LINEで送る
[`evernote` not found]

photo credit: Pragmagraphr via photopin cc

photo credit: Pragmagraphr via photopin cc

最近のシステム開発は短納期が当たり前で、十分なシステムテストの期間を取るのが難しいですね。それなのに品質は高い精度がもとめられます・・・
システム開発におけるテスト工程では量よりも質が重要になってきいると自分は最近感じています。
システムテストを実施する際の「担当者の質」「テストの質」で気を付けていることを5つ紹介したいと思います。

Index

 

1.テスト項目数よりも観点を重視

教科書的にはシステム開発で作成したプログラムコードのステップ数に対して、必要なテスト項目数を算出してテスト仕様書を作成していると思います。
これは必要なことだと思うのですが、ここで抜けているのが「観点」だと思います。
「このテスト仕様書は何のためのテストなのか?」が仕様書の明確に記載されているかが重要だと思います。
テスト観点が明確になっていないと、担当者はただテスト項目を消化してしまい、質の良いテストができているとは言えません。

自分がテスト仕様書を作るときに気を付けていることは「画面遷移」「入力規則」などの観点を明確にすることです。これによりテスト担当者は「あれ?この画面遷移はさっきと違う!」「この入力チェックはこの画面と違う!」「ボタンの配置がこの画面と少し違う!」といった、機能の動作以外に全体の統一性につても自然と気づいてくれるようになります。
また、観点がしっかりしていれば、1から100までのテスト項目数が無くても、質の良いテストが自然とできるようになると考えています。
 

2.テスト消化数よりもバグ検出数を重視

テスト期間が長い場合や、スケジュールが押している場合など、テスト項目の消化に追われて、バグ検出の意識がだんだん薄れてきます。
テスト消化が目的になってしまったらシステムテストをやる意味が無いのと同じだと思います。

そうならないために、自分は日々の消化数に加えてバグ検出数を目標として設定しています。
たとえば1日に5件のバグを見つけるとした場合、テスト開始時は余裕にこなせると思います。しかし後半になるにつれて目標をクリアすることが難しくなってきます。
この目標をクリアするために担当者はイロイロやり始めます。システム開発の言葉でいうと「モンキーテスト」です。テスト仕様書+モンキーテストが実施されることでテスト項目の作成時には気づかなかった試験項目も自然とテストされるようになってきます。
 

3.自分の作った機能はテストさせない

これは結合テスト以降の考慮点になりますが、プログラマが開発した機能に対して、テスト工程では別の担当者を割り当てるようにしています。(逆に単体テストは開発者がするべきですが。。。これは別の機会で書きたいと思います。)
心理的な内容になってしまいますが、開発者は「バグはない」という意識がどこかにあると思います。また、バグがあった場合、自分が直さなければいけないわけですから、正直バグは見つけたくないのです。
そのため、自然とバグを見つけない方向でのテストを行ってしまうのです。
 

4.システムテスト期間中のバグは「善い」とする

「バグ=悪い」というイメージがあると思います。
ただし、これはリリース後の話です。

システムテスト期間中のバグは「悪い」ではなく「見つかってよかった!」と思うようにこころがけています。
「バグ=悪い」という意識でテストをしてしまうと、なかなか「バグを見つけよう」という方向に意識が向かないと思います。(最悪の場合、バグがあっても見ぬふりをしてしまう人も・・・)
 

5.自分が利用者となってテストする

これはメンバーからも「やり過ぎ」とよく言われますが、意外とお客様からは良い評価をいつももらえます。
それは「自分が利用者であると仮定する」ことです。

頻繁に利用する人の立場になって、ボタンの位置は適切か?入力項目の並び順はこれでよいか?マウスとキーボードの利用頻度はどれぐらいか?画面操作がわかりやすいか?など、絶対にテスト項目には書かない内容をテスト工程で行います。
「これって設計段階にやる事でしょ?」という声が聞こえてきそうです(笑)
確かにそうなのですが、設計段階では実際の操作イメージがつかめないことが多いのです。(プロトタイプでもどうしても感じにくい操作感というものがあると自分は思っています)

ただ、これは「設計ミス」として修正を拒否されることもあるので、どのくらいやるかはシステム開発の形態(委託開発や自社開発など)、スケジュールなどを考慮して実践してみてください。
 

まとめ

システムテストはテスト仕様書の質よりも、以下のポイントを押さえたテスト担当者の質が重要と自分は考えています。

  • 利用者の立場にたって
  • バグを見つけようという心構えがあり
  • 何をテストするのか明確にして集中する

少しでも参考になればと思います。

だらだらと自分のテストへの思いを書かせていただきました。
「そうじゃない!」「もっとこうするべき!」という意見ありましたらコメントいただけると嬉しいです!!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

この記事のトラックバック用URL