新人注目! テストを極める最初の一歩

第1回 最初の仕事にとまどっていませんか?

この記事を読むのに必要な時間:およそ 3 分

テストについて

自分のテストについての知識を確認する

テストに取り組もうと思っても,自分に知識や経験がなかった場合,当然ながらうまく対応できるわけがありません。まず最初に,自分のテストについての知識と経験を棚卸しましょう(知識とは仕事を行うための武器,そして経験とはその武器の熟練度と思ってもらうといいでしょう)⁠

さて,いきなり細かく棚卸をするのは新人さんには大変難しいことです。ここでは以下の問いを自分に投げかけてみましょう。

  • テストという言葉を説明できますか?
  • テスト技法をどれだけ知っていますか?
  • テストの書籍をどれだけ読んだことがありますか?

この時点ですべてが×という人は,状況としては良くないですが,良くないことを認識できたので一歩前進と考えてください。他のことにもいえますができないことを,できないと理解することは非常に大切なことです。

よく「頑張ります!なんとかします!」と掛け声だけは元気がいい人がいますが,⁠できないことは,頑張ってもできないし,なんとかもならない」のが現実です。しかし,客観的にできないことを理解する,つまり自分の弱点を理解することで,対策を打つことはできます。

おそらくこの時点では,ほとんどの方が全ての項目に×や△がつくと思いますが,この「知識がない」ことを解決するためにはどうしたらよいでしょうか?

答えは簡単です,新人向けと銘打たれたテストの書籍を1冊買って読むことです。新人時代にテストの作業をうまく行えないのは「知識・経験がないにもかかわらず,気合という根拠のないアプローチだけで解決」しようとしているからです。知識がないなら,他から仕入れればいいわけです。

なお,知識の応用には経験が必要ですが,新人には経験がほとんどありませんので困難なことです。まずはよりどころとなる書籍に書かれたことを実践すると良いでしょう。無理して背伸びしないことも重要なことです。

それから,経験は実践すれば積むことができますが,知識は自然発生しませんから,継続的に入手する必要があります。書籍を1冊読んだからといって満足せずに,さらに別の本を読むなど,知識入手の努力を行いましょう。

また,自分の知識を確認することで,できること,できないことが明確になりますから,プロジェクトチームに対して,自分が貢献できることを検討しやすくなります。

プロジェクトとテストの目的をつかむ

  • そのプロジェクトが開発しているソフトはどのようなものなのか?
  • テストの目的は何なのか?

今からテストしようとしているソフトウェアがどのようなものなのか,押さえる必要があります。

ソフトウェアの例ではありませんが,ブランコを例にとって考えてみましょう。もしあなたが「ブランコを開発している」と説明されたとします。あなたは,無意識にブランコを想像するでしょう。しかしこのブランコは,人によって想像するものが違います。ある人は一人乗りと想像するかもしれませんし,別のある人は二人乗りを想像するかもしれません。さらに,鉄製かもしれないし,木製かもしれません。一人乗りで木製のブランコについて,二人乗りで鉄製のブランコを想定したテストを行っても無駄です。

※参考
Typical Project Life

イメージは曖昧なものです。曖昧なイメージを具体的なイメージとすることで,テストを考えるのが楽になりますし,的外れなテストを行わずにすみます。

また,開発するソフトウェアや,開発そのものの戦略によってテストの目的は大きく変わります。とにかくバグがない,つまり品質が高くなるようにテストするのか,それとも正常系の稼働確認だけでよいのか,ソフトウェアの機能だけをテストすればよいのか,それとも性能や信頼性などの非機能要件までテストするのかなど,目的によってテストのやり方が変わってきます。

作業指示されただけでは,テストの目的はわからないかもしれません。先輩に聞いても答えてくれないかもしれません。そのような時こそ,テストの目的を考えてください。自分の頭で考えることだけで,すぐにはわからないと思いますが,必ず仕事の質が変わってきます。

テストは品質の最後の砦であることを意識する

テストが終了したソフトウェアは,お客様の手に届くことになります。このテストを手抜きでやってしまうと,不具合だらけのソフトウェアがお客様の手に届くことになり,大変なご迷惑をおかけしてしまうことになります。

つまり「新人の仕事であろうと,テストをちゃんとやらないとお客様に迷惑がかかる」ということを意識してください。目の前の作業をこなすことで精一杯になってしまうことは仕方がないのかもしれませんが,その仕事はお客様につながっています。先輩のために仕事をするのではなく,お客様のために仕事を行っていることを意識しましょう。

そして,自分が今から取り組むテストを適当にやってしまうと,お客さんに品質の面でご迷惑をおかけしてしまうことを強く意識を持ち,プロとしてのプライドを持って取り組んでください。

「マインドマップから始めるソフトウェアテスト」では,ソフトウェアテストを行う意義を次のように定義しました。

ソフトウェアテストを行う意義

ソフトウェアテストを行うと,ソフトウェアが作られていく過程で入り込んでしまう⁠バグ⁠を発見することができ,そのバグを開発者が修正することによって,ソフトウェアを利用者が安心して利用することができるようになる。

また,出荷後にバグが出ないことで,ソフトウェアの回収と修正に必要なコストを削減し,企業のイメージ低下,ひいては倒産を防ぐことができる。

今からあなたが取り組むテストは「単なる動作確認ではない」ことを理解しましょう。

最後に

今回は,全部で5つの項目について挙げました,まずは最低限こういったところを把握することから始めましょう。

最初からすべての仕事をキチンとこなすことは難しいですし,新人は失敗するものだということは先輩達も理解しています。ただ,最低限のポイントを押さえることで,仕事の質が上がりますし,先輩たちも安心することでしょう。

  • 常にポイントを確認しながら進めること
  • 目的や意義を意識して作業すること
  • 指差し確認

これらを意識しましょう。

では,これらをふまえた上で,次回からテストそのものについてのポイントを説明していきます。

著者プロフィール

鈴木三紀夫(すずき みきお)

1992年,(株)東洋情報システム(現TIS(株))に入社。複数のエンタープライズ系システムの開発に携わり,現在は社内のソフトウェアテストに関するコンサルタントとして活動中。ASTER理事,JaSST実行委員,JSTQB技術委員,SQiPステアリング委員 他。

著書


池田暁(いけだ あきら)

2002年日立通信システム(現日立情報通信エンジニアリング)に入社。設計,ソフトウェア品質保証業務を経て,現在は開発に関する設計/テストツールの導入や,プロセス改善に関する業務に従事。ASTER理事,JaSST実行委員,品質管理学会・ACM正会員。

著書