ソフトウェアテストシンポジウム2021北海道 の事例セッション『役割分担して行うペアテスト』を聴講しました。その中で「思考を切り替えるのが大変」というお話がありました。
たしかに「テスト(Testing)するときの思考」と「バグチケットをBTS*1に登録するときの思考」はちがいます。前者は未知の問題を探し出すために創造的で破壊的な思考、後者は起きたこと(事実)を整理して簡潔にわかりやすくまとめるといった論理的な思考の占める割合が高いのではないでしょうか。そう、脳みその使い方がちょっとちがうのです。
ところが、わたし自身はその二つの思考を切り替えるのが大変とは感じてません。これは面白いなーと思い、バグを見つけてから次のテストをはじめるまでのことと、なぜ大変と感じてないのかを考えてみました。以降、テスト(Testing)するときの思考を「テスト脳」と書きます。
バグを見つけたらプログラマーに見せる
わたしたちのチームはバグを見つけたらチケットを書く前にプログラマーに見せます。どんなことをしていたかを白状し 伝え、状況に応じてログファイルを見たり、もう一度バグを再現させたり、追加で試してみたいことがあれば一緒にテストします。この時点でバグに対する一時調査が終わっていることも少なくありません。
このときはまだテスト脳です。バグの種類や内容にもよりますが若干興奮している状態です。
チケットを登録する
プログラマーに伝えたらチケットを書きます。
- タイトル
- システムバージョン
- 概要
- 再現手順(わかれば)
- 画面キャプチャ(あれば)
- ログファイルの置き場所(あれば)
この段階で、はじめの読者(プログラマー)とある程度、認識合わせができているので「この表現で伝わるかな?」と思い悩むことがないのだと気づきました。
このときは余韻は残っているけどテスト脳ではありません。前の授業が体育(水泳)で身体が心地よいだるさに包まれている感じです。
余談ですが、チケットはほどほどに書いておけばよいことになってます。コーディングした時点ではうまく動くかわからないのと同じで、うまく伝わるかは自分以外の人に読んでもらわないとわかりません。チケットを読んだ誰かが、この書き方だとわかりづらいなとか、そういう意味だったのね(誤解した)とか、具体的な問題を検出した時点で書き直してます。
この「ほどほどに書いておけばよい」というスタンスは、書き手に余計な時間(時間とはその人の時間ではなくチームの時間)を使わせないという考え方が働いているのだと思います。
テストを再開する
チケットの登録が終わり、テストを再開します。おそらくここで「思考を切り替えるのが大変」と感じるのだと思います。バグを見つける直前のテスト脳に持っていきたいのですよね。
わたしの場合は(もうひとりいるテスターも)バグを見つけたチケットについては、手をつけないことが多いです。プログラマーに見せたときに「もっとやってほしい」とリクエストがあればやりますが、そうでなければ、バグが直ってくるまでテストしません。
わたしたちは、別のチケットのテストを開始します。新しいテストのはじまりです。先ほどのチケットとは内容が異なるのでバグを見つける直前のテスト脳に戻さなくてもいいのです。そこが大きなちがいかなと思いました。チームで扱うチケットの大きさや、チケットの数も関係するのかもしれません。
バグに執着させない
わたしはバグを見つけると芋づる式にいろんなことを試したくなります。一番シンプルな再現手順を見つけるために、どこのなにがバグの引き金になったのかを知りたくなります。他の条件でも同じバグが発生するのかしないのか。確かめたいことが次から次へと出てきますが、それをさせてはもらえません。「バグを見つけたらすぐにプログラマーに見せる」というプラクティスが邪魔をする 防波堤になっています。バグを見つけても、伝わるまでは見つかってないのと同じなのです。プロの無職、曰く「テスターの満足より、いまチームとしてどうしてほしいかの方がだいじ」とのこと。*2
それはもう既知のバグなんだよ。あなたにはまだ誰も気づいていない未知の問題や課題を見つけてほしいんだ。
さいごに
わたしのテスト中における過集中は自他共に認めるところではありますが、それに加えて「思考を切り替えるのがめっちゃうまいのでは?」と思ったりもしたのですが、そうではなかったです。バグを見つける直前のテスト脳に戻す必要がなかったのでした。開発のやりかたのちがいである、と今日のところは結論づけたいと思います。
このようなシンポジウムに参加すると、自分たちが普段やっていることを、ちがう視点で見つめ直すきっかけをもらえたりします。知らないことがたくさんあるのだなぁとあらためて思いますし、気分転換にもなりますね。基調講演と招待講演もとてもよかったです。
#jassthokkaido おおたさんの基調講演、開発してるんだぜ!感が満載で、とてもよかった。わたしも今から論理出社して開発したくなっちゃった!
— miwa (@miwa719) 2021年7月9日
#jassthokkaido『医療現場でのテスト』とてもよかった!人間の苦痛や心配事を取り除くためにどれだけの知識や経験を持ち、日々アップデートしてるかってことですよね。病気は戦うべき相手だけど病気本体を憎めない、そんな幸咲さんのお話はソフトウェアテストと似ていて、あっという間の1時間でした。
— miwa (@miwa719) 2021年7月9日