2021クリスマススペシャル「探索的テストを投げられたら…」
ソフトウェアテストのアドベントカレンダー2021の最終日の記事(マンガ)です!
qiita.com
「探索的テストのときどういうこと考えながらやってますか?」といった質問を受けて描いてみました。
どう考えていくかの方法はたくさんあって、今回はそのうちの一例といったところです。
きゅんちゃんの「私だったらどう使うか?」は、ユーザーの使い方でのアプローチといったところ。
他にも例えば
「こういうところのバグ修正が多かったから……」
とか
「ここの機能とあそこの機能は似てるから同じようなバグがあるのでは……」
など、アプローチ方法はとてもたくさんあります。
この辺は経験を貯めたり、人のブログを読んだり本を読んだりすることによって自分の中のアプローチ方法のネタが増えていったりします。
探索的テストの思考の流れ
プロダクトを触ってみて学習して、テスト設計を頭の中でして、テスト実行して、実行結果を分析して次にどうしていくか考え……。
といったサイクルで探索を進めていくのですが、言葉にするとなんかややこしい。
作者はマンガのような「連想ゲーム」が頭の中で回っていることが多い気がしています。
日付がおかしい→
そろそろお正月だから年のまたぎは大丈夫か?→
お正月といったら海外旅行行く人もいるしタイムゾーン変更は大丈夫か?→
タイムゾーンを変えてみて日本時間と海外の時間の差分(すきまの時間)で記録すると?
たぶんこんな感じで考えがつながっていく気がします。
時間の管理
テストをするとき、スマホやパソコン側の時間を変えたりすることもあります。
しかしデータの保存時の時間の管理はスマホ側は使わずサーバー側で行っていたりすることも多いです。
けどスマホ側の時間をサーバーに送ってそのまま保存することもあるかもだし、スマホ側から送られた時間とサーバー側の時間を比較して「これはダメ!」みたいに弾くシステムなんかもあったりします。
自分が扱っているプロダクトの時間の管理はどうなっているか把握しておこう。
もしかしたら的外れなテストをしているかもしれません。
日付の確認
日付の確認だとみんな「うるう年!」というところに走っていく人が多いけど、まずは日のまたぎ、月のまたぎ、年のまたぎを押さえましょう。
デイリーのバッチでのデータ処理、月締めの処理なんかがあったりするわけです。