分かりやすいホワイトボックステスト
初回はホワイトボックステストです!いろんなところの過去問で見ますね!
⭕️ホワイトボックスとは??
…ソフトウェアの細かーい部分(ソフトウェアユニット、モジュールと言います)の内部の仕様に注目して実施するテストです。
白いのは中も見やすいのでホワイトって覚えると楽かもしれないです!
※反対に内側が見えない真っ黒なのは、ブラックボックステストです。外部の仕様(入出力や機能仕様)をみます。
なんのためにするの??
簡単に言うと、テストを効率よく行なって、誤り(バグ)を見つけるためです!
ここで出てくるのは、
命令網羅
判定条件網羅
条件網羅
判定条件/条件網羅
複数条件網羅
です。この順番で説明していきますね。
先に今後使う画像を貼り付けるので頭に入れて読んでみてください。
![](https://assets.st-note.com/img/1729345128-rtIX6l1mjqd09YzFiBRkKMCe.jpg?width=1200)
それでは
1、命令網羅についてです。
こちらはいたってシンプルです。とりあえず命令を一回はやろうね。って話です。なんと1だけでOKなんですね。全ての処理を一回はやってますよね。
2、判定条件網羅
すこーし難しいですよ。
条件判定の結果が真と偽になっているもの一回は一回は実行します。
つまり、1と2、1と3、1と4の組み合わせならどの組み合わせでも真と偽が一個ありますよね。
3、条件網羅
またまたレベルアップです!
AとBそれぞれ一回は真と偽を実行してねという話です。
混乱してると思うのでもう一回画像おきますね。よーくみてください。
![](https://assets.st-note.com/img/1729345679-HFMb3wokpgX9flRm8qQ1uKYP.jpg?width=1200)
AとBそれぞれ真と偽を実行とはなんぞや、結論から言うと1と4、2と3になります。
真と偽の組み合わせなら判定条件と変わらないんじゃ?と思いますよね。
判定条件が着目しているのは「全体の結果」
条件網羅が着目しているのは「AとBそれぞれの結果」です。
1と2ではAは真しか実行していないですよね。1と3はBが真しか実行していません。もう一個行くと3と4はAは偽しか行っていないですね。
よって、1と4、2と3の組み合わせしか当てはまりません。
判定条件/条件網羅
名前の通り判定条件網羅と条件網羅の両方を満たすテストを行います。
またまた厄介ですね。
はい!また画像です!
![](https://assets.st-note.com/img/1729346157-koh2ug0XAtlidcIJSVprQye9.jpg?width=1200)
さ、今回はどれが当てはまるでしょう…
1と2と3です。
まず、判定条件網羅が1と2、1と3、1と4条件網羅が1と4、2と3だったのでどちらも含むのは1と2と3、1と4の2通りですよね。
ここでん??となった方冴えてますね!
1と4は行ってはいけないんです。
理由を説明していきますねゆっくり読んでください💪
今、条件はA AND Bですよね。
ANDというのは真と真しか真になりません。
では、ANDをORにしてみましょう。
A OR Bになります。ORは真があれば真になります。簡単に言えば偽と偽しか偽になりませんよね。
書き込むと図のようになります。赤のORです。
![](https://assets.st-note.com/img/1729346782-zHnOBFfuhPqypAR9QoTtDYel.jpg?width=1200)
困ったことに1と4はANDでもORでも同じ結果になってしまうんです。
これでは、ANDとORを間違えても判別できませんよね。
だから、1と4は行ってはいけないんです。
ここまできた皆さん、もうあとは大丈夫です。
最後の複数条件網羅はめちゃくちゃ簡単ですよ〜
複数条件網羅
これはですね全てのケースを行なってしまえばいいんです!
効率は悪いですが漏れはないですよね。
以上でホワイトボックスの説明は終わりです。
初めてなのでわかり辛かったかもしれませんが、少しでもわかっていただけたら嬉しいです。
ブラックボックス編もやろうかな…?
また、次回お会いしましょう!