CAT GETTING OUT OF A BAG

What the tester is thinking.

バグの原因にすぐにたどり着かないのは悪いことばかりでもない

※ この記事は『テストラジオ 第201回』(約30分)を視聴してから読むとより理解できます。

youtu.be

いつの間にか『テストラジオ』が放送200回を超えてました。おめでとうございます!*1

『テストラジオ』は特にバグに関する回が好きです。パーソナリティのなそさんやよしたけさんが開発(テスト)してる製品と、わたしが開発してる製品はだいぶ異なりますが、お二人が話してくれるシステムのおかしな挙動からバグの原因を予想するのが面白いですし、自分たちの製品で似たようなバグが起きるとしたらどのようなものだろう?と想像しながら聴いています。

バグの原因にすぐにたどり着かないのは悪いことばかりでもない

第201回はブラウザ依存バグのお話でした。よしたけさんとsaeさんがおかしな挙動を見つけたとき、すぐに「ブラウザ依存かもしれない」と思えなかったこと、想起できなかったことを、よしたけさんが悔やんでいるような印象を受けました。

わたしはすぐにたどり着かなかったことで良かったこともあると思いました。もしすぐに「ブラウザ依存かも」と思えたら、それで終わりになっていたんじゃないかな。それで終わりというのは「ワークスペースを作成したユーザーだけおかしな挙動になるんじゃない?」が表に出てこなかったのではないか、ということです。今回それが話題になったことでチームの人たちの脳内には「そういう条件のバグがあるかもしれない(だとしたらちょっと厄介な問題だ)」が一瞬でも記憶されたと思います。記録ではなく記憶なので数値で表すことはできませんが、これから開発(テスト)するときに、きっとこの記憶が活きてくると思います。

もちろんバグの挙動を見たときにその原因に直結するような条件にすぐにたどり着くのは素晴らしい能力です。調査時間もバグの混入時間も短くて済みますし、なによりすぐにたどり着いた自分が気持ちいい(笑)。

バグの原因や条件や再現手順を見つけるために考えたり試行錯誤した時間は無駄ではなく、それがそのまま自分の思考の引き出しを増やしたり、おかしさにたいする瞬発力を鍛えたり、自分たちが開発しているシステムや製品をより深く理解することにつながります。わたしたちが憧れる優秀なプログラマーやテスターもそのようなことをたくさん経験して、いまに至っているのではないでしょうか。*2

自分が一度信じたものをなかなか手放すことができない

今回のお話をちょっとちがう視点(認知バイアス)で捉えてみると「自分が一度信じたものをなかなか手放すことができない」が浮かび上がってきます。きっとこうに違いない!と思ってしまったことに囚われすぎて「あること」がすっぽり抜けてしまう。そのような人間としての特徴が自分には備わっているのだから、開発(テスト)するときに自分で自分の意識をどのようにコントロールしたらよさそうか、なんてことも『テストラジオ』は気づかせてくれます。

"自分が一度信じたものをなかなか手放すことができない" は上記の書籍(論理学系バイアス19『信念の保守主義』)からの引用です。

*1:どうでもいい情報ですが、うちのチームは先週872イテレーションでした。この数値に特別な意味はなく(単なる週番号で「あの辺」や「あの頃」を示す番地やポインタでしかない)キリ番で盛り上がったりお祝いしたりすることもないのですが、個人的には1,000イテレーションになったときのチケットシステムの挙動が気になります。まあ、プロの無職 @m_seki お手製のRWikiシステムなので、なにごともなくふつうに動いてそうですが...

*2:よしたけさんやなそさんはわたしに言われなくてももうそんなことはわかっていると思うけど、200回突破記念のお祝い? に言語化してみた!