はじめに
今回は全国各地の入社して間もないだろう新入社員さん向けに、テストを行う上であると便利な知識、同値分割と境界値分析の用語についてざっくりと説明します。
※「そんなの知ってるよ!」「もう仕事でプログラミングやってるから大丈夫!」「テスター歴〇年のベテランです!」という方はブラウザバック推奨です!
本記事はあくまで知識0の方がざっくりとでもいいのでイメージが湧くようにお手伝いする記事ですので、専門の難しい用語はあまり出てきません。ご了承ください。
何故それを説明するの?
冒頭にも記載しましたが、同値分割と境界値分析の考え方はIT系の企業に入りたての方なら持ってると便利な知識です。
多くの会社ではいきなりプログラミングを行うのではなく、下積み経験として何かしらのテストを行いますからね!
そのテストも大きく分けるとブラックボックステストとホワイトボックステストという項目になるのですが、ホワイトボックステストから行うことはあまりないと思うので今回はブラックボックステストについて軽く紹介してから本題に入ります。
※ホワイトボックステストは記事を分け、次の回で紹介しました。
ブラックボックステスト
☆ざっくり説明すると取扱説明書通りに商品が動くかどうか確かめるテストだよ!
ブラックボックステストとは、発売前の商品の動作と仕様書や取扱説明書(商品の動作の理想像が詰まったファイルや紙の塊)を見比べてバグが起こらないかチェックするテストです。
「発売後の商品でも不具合はあるからテストする意味はあるのかな?」と思ったそこの貴方!かなり意味があるんですよ!!
発売した商品は沢山テストを行って不具合がかなり減ってるものなので、このテストは大事なんです。
お待たせしました!
では、そんな二つの考え方について見ていきましょう!
同値分割
☆ざっくり説明すると、同じ行動を行うものを集めてその中の一つを選んでテストだよ!
イメージの例:「りんご」「蜜柑」「バナナ」は全部ジャンルが果物なので、「りんご」を調べてジャンルが果物と表示されるか確かめる。
同値分割とは、行動パターンが同一で変化しない値を集め、その値を全部同一の結果であるとみなし、値の中から任意のものを一つ選んで行うテストの手法です。
何故そんなことをするの?
→全部同じ値なら何を入れても同じになるよね!という前提で、ユーザーがその値を元に操作した際機能を使えるかテストするためだよ!
ーテスト設計者(テストを作る人)のメリットとデメリットー
・メリット:同じパターンの機能や分類があればある程テストする回数が減ること。
・デメリット:本当にその機能や分類が同じであるか分からない段階では使えないこと。
境界値分析
☆ざっくり説明すると、区切りの両端にある値が合っているか調べるテストだよ!
イメージの例:200枚の紙があり、1~100枚目は赤、101~200枚目には黄色の色がついています。赤い紙の始まりと終わりの1枚目と100枚目、黄色い紙の始まりと終わりの101枚目と200枚目を確認し、色がそれぞれ合っているか確かめる。
境界値分析とは、行動パターンが変化するところの境目の値に着目し、それぞれきちんと分類が行われているか確かめるテストの手法です。
何故そんなことをするの?
→ここはこの値だけど、ここからはこの値だよね!という前提で、ユーザーが思った通りにその機能を使えるか確かめるためだよ!
ーテスト設計者(テストを作る人)のメリットとデメリットー
・メリット:境界値周辺にはバグが潜んでいることが多いので、テストする本来の目的である不具合の発見が比較的簡単に行いやすいこと。
・メリット2:同値分割のみよりテスト結果の精度が高く、追加の要望や仕様の削除などで仕様変更があった際も比較的対応しやすいこと。
・デメリット:多い時だと同値分割のみの3倍近くテストする回数が増えるため、テストする時間や人が必要であること
・デメリット2:テストする項目を作る際にはどこは削って良くてどこからは必ず実施しないといけないかが同じジャンルの製品でもプロジェクトによって異なること。
おわりに
いかがでしたか?
もしこの記事を見て「ブラックボックステストについてもっと詳しく知りたい!」と思った方は、是非Qiitaの他の専門的なことが書かれている記事をご覧になってくださいね。