しらみノート

IT業界のすみっこで働くママテスターのノート。

JaSST九州の感想①

ちょっと前になりますが、JaSST九州に行ってきました。

レポート&感想になります。



◼️ワークを通してじっくり考える同値分割&境界値分析


JSTQB FLやテスト本でもよく見かける同値分割&境界値分析なので、知識としては知ってはいました。

「同値分割」は同じ結果になる入力値を有効同値クラス、無効同値クラスとしてまとめて、そこからテストデータを選択することで、テストを合理的に減らす。

「境界値分析」は有効/無効クラスの境界(バグが潜みやすいところ)を狙ってテストし効率的にバグを出せる。

でも実際にちゃんと使ってるかというと、せいぜいテスト観点に「・0件/10件/11件の確認」とか文章で書くくらい。

このセッションでは、まずワークショップのたくさんの例題にとりくんで同値分割&境界値分析を体感し、

その後「活用時にぶつかる問題」とそれらへの取り組み方について教えて頂きました。


◼️ワークショップ

ワークショップ中にまず気になったのは「自分の思い込み」が強いなー、ということ。

例えば、体重を入力する例題の時に私は「0」とか「100」とかで数直線を描いてたんですが、解答時に「体重なので99.9や100.0」みたいな話があって、「あー!ですよね💦」となりました。


で、それ以降は「ひっかからないぞ、ひっかからないぞ」と気をつけて問題文を読むようになりました。


でも結構ひっかかるんですよね。。自分の思い込みに。。

例題で条件としてあげられてるのは「時間は〇時〜〇時まで」とか、文章で読むと数行のものばかりで、簡単そうに見えるんです。

だけど制限時間は少なめで、例題数はそこそこあるから残り〇分〜とかだと焦ってくるし、できたら全問正解したいとか欲もあるし。。

モヤモヤしながら取り組んだワークショップですが、個人的にはこれが良かったなと思いました。


理由は、その後の井芹さんの「活用時にぶつかる問題」がすーっと染み込むように理解できたからです。



◼️活用時にぶつかる問題


・テスト目的のあいまいさ

「何を確認したいんだっけ?」が明確じゃないとテストしなくていいところまでテストしたり、しなきゃいけないところを逃がしたり、が発生する。

    ワークショップの中の「買い物サイトでログイン中に、個人情報参照しようとするとパスワード入力を求められる。入力値が登録済パスワードと合致してるかどうかを確認するテスト」ってやつでは、入力値のバリデーションチェックは「テストしなくていいところ」。

ログイン中ってことはユーザーは一度は正しいパスワードを入力してるってこと、だからこの場合は、ログイン画面みたいに厳重なテストは割愛してもよし、と理解しました。

でも現場では、例題みたいに「入力値が登録済パスワードと合致してるかどうかを確認」するのが目的、と決められてることはあまりない。仕様書とテスト対象がぽいっときて「テストお願いします」という感じ。

あ〜だから上流にテストチームが入るって大事になんですね。

テストの目的を決めて開発者さんやステークホルダーと合意することで、ここまで、って線をひける。それがあると延々と深追いしなくていい平和なテストができそう。

あとは仕様書の段階で、テストチーム側が同値分割&境界値分析することで、仕様書のぬけもれや実装時に気をつけてもらう効果も期待できそう。

…。そんな環境を作るまで、が一番大変そうだ…。


自然言語のあいまいさ

「数字」ときいて、負の数は?小数点は?対数表記は?はたまた先頭に「0」がついた「0010」みたいなのは?

ワークショップでめっちゃ身にしみたんで分かります〜〜

。・゜・(ノД`)・゜・。    

「数字」もいろんな数字があってその中から、テストの目的に合ったデータをチョイスしなきゃいけない。

色んな入力を発想できる力と、目的を正しく理解して選んでいく力どちらも必要なんだなと思いました。


・ソフトウェアの利用場面の多様さ

そのソフトウェアが利用されるのは、パソコン?スマホ自動販売機?おもちゃ?車?医療機器?

たしかにー!

私はスマホとwebしかテストしたことないですが、色んな機械にソフトウェアがのっかってますもんね。

医療機器のテストとかマジ怖い…。

今回ワークショップで、条件が一つ増えると描いた数直線がぐっちゃぐっちゃになるの体感したので、例えば複数の環境(利用場面)にまたがる場合の同値分割&境界値分析…、うん、描く前からくじけそうだと納得しました。


・プログラム実装上の制約

変数の型や、2038年問題や、バイト数などなど。

変数の型では直近で思い当たる不具合があり…こういうのも知識として知ってないとそもそもテストしようって発想でない。



◼️「活用にぶつかる問題」に対してどう取り組めばいい?


・視野を広げること

・合意すること


銀の弾丸」はないので、自らの知見を広げ、仲間と共有し、ステークホルダーとの合意をとる。そのサイクルを回すのが大事とのことでした。


ステークホルダーとの合意、はすごくできてないことなので意識してやりたいと思いました。



長くなったのでいったんここまででUPします。