Karen Greaves氏とSam Laing氏は、ドイツはポツダムで開催されたAgile Testing Days 2015にて"testers are dying"と題した基調講演を行った。InfoQは、このカンファレンスの内容を取り上げる予定だ。
InfoQは両氏にインタビューし、アジャイルがテスターに与えた影響やテストのリードタイムを短くするためにテスターができること、アジャイルチームでのテスターと他のメンバとの協力、テスターがアジャイルチームで貢献できる価値について話を聞いた。
InfoQ: 私の経験では、アジャイルの大規模な普及はテスターの役割に影響を与えていると思います。同じような経験をされていますか。
Greaves: はい。しかし、チームがアジャイルを導入したのにテストの方法を変えない場合には問題がおきます。毎週リリースをしているチームのペースに従来のテストがついていけるはずはありません。残念ながら、スプリントの最後までキャッチアップをしようとするテスターが消耗しているというのが、よくある光景です。キャッチアップできないのは自分の失敗だと考えるテスターすらいます。この点に私たちが変えたいと思っていることがあります。なので、カンファレンスやイベントでアジャイルのテストについて話しているのです。
Laing:Karenがいうように、テストに対する考え方を変えるのが重要です。Agile Testing Daysでの私たちの基調講演では、優れたアジャイルテスターが希少であることを話しました。つまり、テスターの役割は、テストをすべてやることから、チームにテストの実践を教えることに変化している、ということです。従来の実行に時間を割く仕事からリーダーやインフルエンサーとしての仕事に変わってきているのです。
InfoQ: 従来のテストはアジャイルの世界では長すぎるという人もいます。テストのリードダイムを短くするためにテスターは何をするべきでしょうか。
Laing: テスターはもっと早い段階で参画するべきです。要件が議論されている時点で質問をする必要があります。コードが書かれる前に全員の頭の中に同じ絵が描けているようにするのがゴールです。これによってバグを防げます。バグは誤解から生まれるからです。
Greaves: 私にとってのアジャイルテストは自分のすべての仕事にテストの考えを吹き込むことです。テストフェーズのリードタイムを短くすることではありません。テストフェーズという概念自体を根絶し、すべての中心にテストを置くということです。
InfoQ: アジャイルでは、テストをするのはテスターだけではありません。テスター自身はどのように感じているのでしょうか。
Greaves: まず、テスターは面白くは思っていません。しかし、面白くないと思うのは、テスターが皆の仕事に責任を持つ状態が続いてしまうからです。チームが、皆でテストをしようとすれば、品質の責任は全員で共有されます。顧客がバグを見つけたら、そうなれば、テスターになぜミスをしたのかと聞くのではなく、チーム全体に問いかけるべきです。
Laing: テスターにとっては恐ろしい事態かもしれません。テストは自分の仕事で品質をコントロールするには門番になるしかないと感じるテスターもいます。私たちはテスターと一緒に働くことで、チーム全体がテストを考えることを支援することによって、より品質をコントロールできることを示しています。仕事が危険に晒されていると感じるテスターもいるようです。開発者が自分たちの仕事をしてしまい、自分たちは開発者の仕事ができないからです。テスターの役割は単にテストを実行するだけではなく、テスターの考え方事態がチームに価値ある貢献ができるということを理解してもらう支援をしています。
InfoQ: アジャイルチームに参画したテスターに何かアドバイスはありますか。他のチームのメンバとはどのように効果的に協力すればいいでしょうか。
Laing: テスターはプロセス全体で明確な質問をすることです。"馬鹿らしい"質問だと思われるかもしれません。ほとんどが答えを知っていると考えている質問で改めて議論する必要はないと考えているからです。そして、ここからバグと機能が侵入してくるのです。テスターはこのような質問をするのに最適なポジションにいます。チームの皆が同じページにいるようにできるのです。
Greaves: アジャイルチームに参画するテスターにとってもっとも重要なことはオープンなマインドを維持し、開発者と同じサイドにいるということを忘れないことです。テスターと開発者の間には長い間、壁があり、お互いを避難していました。アジャイルチームでは、このような状態は破滅的です。
InfoQ: アジャイルチームでテスターが貢献できる価値について、あなたの考えを教えてください。
Greaves: Samが以前に話した通りです。もっとも価値があるのは、たくさんの質問をすることです。特に最初から愚かな質問をしましょう。そして、なぜ、と問うのです。なぜ、開発をする理由、その理由に適うかどうかのテストの仕方がわからなければ、開発はできないでしょう。アジャイルでは、テスターはひとつひとつテストのパスを通す仕事から開発される前から不要なパスを生み出さないようにする仕事に変わります。開発物が少なくなり、事前にどのようなテストをしたらいいのかわかっていれば、テストは(そして開発も)より簡単になります。
Laing: テスターがチームにもたらすテストのマインドセットはとても価値があります。"どのようにテストするのか"と問うだけで、チームはテストについて考え品質を早めに固めるようになります。また、テスターはユーザがわかる言葉で話ます。技術的な専門語を使いません。これは優れたコミュニケーション能力です。ユーザやビジネスの人たちとも協力できるでしょう。