奥深く悩ましく、そして楽しいソフトウェアテストの世界

テストエンジニアのプレッシャー・マネジメント

»

テストエンジニアは、基本的に開発工程の下流、リリースや出荷判定といったプレッシャーの掛かる場面でゲートキーパーとしての役割を果たしています。
そのため、基本的にストレスを受けやすい環境にいると言えるでしょう。

特にテストチームのリーダーとなると、
常に掛かるプレッシャーの中でメンタルを蝕まれ、
それが直接的ないし間接的に職場を去る要因になっているのもこれまでの経験で複数見てきました。
今回はそんなプレッシャー・マネジメントをテーマにお話ししたいと思います。

テストは実行だけが仕事ではない

「(※まだ始まったばかりの段階で)なぜ不具合が上がってこないのか」
「(※まだ始まったばかりの段階で)テストは進んでいるのか」

これはテスト業務への理解が低いお客様が言うことが多かった台詞です。
過去形にしているのは、個人的には最近聞かなくなってきたからです。
ただ、まだまだあるかも知れません。

テスト=実行、だけではなく、
テストにも設計があるというプロセスへの理解度、認識の低さの問題かと思います。
今では、テスト計画~テスト戦略~テストアーキテクチャ設計といったさらに詳細化したテスト上流工程もスタンダードになりつつあります。

なぜ、それほど工程を詳細化するかと言うと、
ソフトウェアの開発規模が大きくなっている今では、全てをテストすることはまず不可能だからです。
限られたリソースの中でいかに効果的なテストを組み立てることが出来るか、
これがテストエンジニアの肝であり腕の見せ所と言えます。

そのため、テスト活動の冒頭からテスト実行をすることはほぼないですし、
テスト設計の工程は、テスト実行の工程とほぼ同じか、それ以上を費やすこともあります。

不具合がないはずはない!出るまで残業だ!!

テストエンジニアは時に様々な理不尽からストレスを抱えることがあります。

テストオペレータ 「テストケースを進めていますが、不具合はありません」
テスト管理者 「今日は不具合がないそうです」
お客様 「不具合がないことはないだろう。目標のn件を出すまでは残業対応だ」

これは私がテスト管理者の立場で実際にあったやり取りで、
「不具合が出ない、まずいまずい」と当時は焦っていました。

冷静に考えると大したことはないのです。
『テスト対象の機能は、テストケースの実施手順では不具合はないことが証明された』
ただそれだけのことです。

問題とすべき点としては、
"テストの質"と"テスト活動の成果の指標"にあります。

例えば、自動販売機をテストするとして、
・ 購入したいドリンクのボタンを押して期待通りのドリンクが出ること
こうした正常系のテストと、
・ 返金レバーを回しながら、ドリンクのボタンを押し、返金かドリンクが出るかどちらかのみが行われること
といったユーザの誤操作や悪意から組み立てるテストがあります。

何かの本で、自動販売機の最適なテストは、
非対応の海外の硬貨を投入し自動販売機に蹴りを入れながら複数ボタンを連打する、
といった内容が書かれていました。

確かにそこまですれば、何かしら不具合の一つも検出できそうですが、
そんなテストばかりをいきなりしているわけではありません。
段階的アプローチ、例えば、一つ一つのボタンの確実な動作を確認した上で、
他の条件との組み合わせを見ていくテストアプローチを取った場合、
先に進むためのテストとして、タスクの前半は不具合が出ないことが期待結果となります。

不具合の検出数を成果とする場合は、テストの目的と不具合の質も考慮して決める必要があるでしょう。
ただ、私の経験上では、不具合の検出数は指標(メトリクス)の一つではありますが、それをテストチームの成果の全てとしたことはありません。

不具合の数が日課になってしまうと、
テスターの中にはテスト実施内容から外れ、状況に関係ない(今すぐ直す必要もない)軽微な不具合(ボタン配置がややズレているなど)を報告し、
ノルマ達成とばかりに満足顔で業務を終えるといった行動を取ったり、管理者も容認したりしてしまいます。

それはテストチームの正しい姿とは言えないでしょう。


プレッシャーに打ち勝つには

テストエンジニアという仕事はプログラマーとは異なり、
そのクリエイティブな作業に明確さを持っていません。
ソースコードを何行書いたと、テストケースを何ケース作った、
は同列で比較できないということです。

特に管理者層となるとテストの難しさを理解頂けていないケースが多く、
それがプレッシャーと相まってストレスの基となります。
テストエンジニアのタスクは、どのような視点、観点でテストを行い、どんな不具合を出したいか、常に目的と目標を明確にし、
私たちに無駄な作業は何もない」ことをアピールすることが、
プレッシャーに打ち勝つ(テストチームの理解と協力を深める)術だと私は思います。

Comment(0)

コメント

コメントを投稿する