さてはて、ずいぶんと物騒なタイトルです。
お前がいうのかよ!?ってツッコミ待ちです。
第三者検証会社でテストを中心に活動することが多い「なそ」ですが、最近は育成にも力を入れています。
育成スタイルとしては、考えてもらう時間を大切に教えすぎないようにしています。
相手に考えてもらって、その回答を持って私や有識者へのコミュニケーションのきっかけにしてもらっています。
(育成は、本当にむずかしい)
その中で、ここ最近で何人かに質問したのはタイトルである「テストってどうしてやるんだろう?」です。
その目的をしっかりと固めた上でテスト業務を進めてもらいたいからこその質問です。
回答としてはたいてい「バグをみつけたいから」「品質を良くしたいから」です。
本当に「バグ」を見つけたいですか? 本当に「品質」を良くしたいからですか?
(私はできればバグに出会いたくないよ!!でも、出会うことで新しい発見をすることもあるので出会いたい時もある)
(そして、品質ってそもそもなに?みたいな議論に・・・・・・)
たしかに、バグを見つけることは重要です。バグを狙い撃つためのテストケースも書くこともあります。
しかし、それはテストの一例ではないでしょうか?
バグを見つけるためにテストをするのであれば、誤字脱字に始まり、罫線や、入力項目のちょっとしたズレを意識すると結構見つかることができます。
たしかに表示される内容は重要です。
重要なんですが、もっと気にしなくちゃいけないことがありませんか?
登録できないとか、画面遷移できないとか・・・etc・・・
うーむ
Q:なぜ「バグ」を見つけたいのでしょうか?
A:「品質」を良くしたいから
Q:では、「品質」ってなんでしょうね?
A:「バグ」がないこと
Q:相互参照してるやん!(笑)
※「品質」について語ると品質警察に捕まるので、ここでは割愛します。
※「品質」とは何かを追求する人をないがしろにしているつもりもないし、私も大好物です!
========閑話休題==========
私は「安心して使ってください」ということを確認していく行為を
テストだと思っています。
システムを作り始めてから、システムが出来上がり個々人が作った機能が構築され始め、1つのものとなります。
その1つ1つがうまく連携し、やりたいことができるかを確認するのがテストだと思っています。
そのために、どこでどうやったら効率良くなおかつ無駄なく確認できるかという計画を立てます。
不安なところや複雑なところをいろんな人から聞いて、優先順位を決めます。
なんか怪しいから、スケジュールの確認をしつこく聞いたりします。
成果物をレビューします。
安心して使ってもらうために、バグの修正優先度が設定します。
開発の早い段階から確認しなくちゃ手戻りが大きくなるユーザビリティやパフォーマンスを検討するし、開発活動でデグレがでるといろんなところに波及するのでCIツールが活用され、テストの自動化を取り組みます。
開発プロセスのいろんなところで、いろんな活動します。
テストの目的が忘れ去られた時点で、テスト活動は暴走するのではないかと思っています。
メトリクスがぁぁぁ!!!
効果がぁぁぁ!!!
と有名な規格値に振り回されて、本当にやりたかったことに時間が割けなくなるんだろうなぁと思っています。
開発で使える時間は有限です。(特にテスト活動には)
「安心して使える」を増やしていく行為がテスト活動でありたいなぁ
以上、ふんわりしていますが「なそ」が言いたかったことを言えたので満足♪