Help us understand the problem. What is going on with this article?

【初心者向け】ホワイトボックステスト

前回の記事【初心者向け】同値分割と境界値分析で単語だけ取り上げたホワイトボックステストの記事です。

はじめに

今回はホワイトボックステストについてざっくりと記載していきます。
※全国各地の入社して間もないだろう新入社員さん向けの記事ですので、「そんなの知ってるよ!」「もう仕事でプログラミングやってるから大丈夫!」「テスター歴〇年のベテランです!」という熟練の方はブラウザバック推奨です!
本記事はあくまで知識0の方がざっくりとでもいいのでイメージが湧くようにお手伝いする記事ですので、専門の難しい用語はあまり出てきません。ご了承ください。

何故それを説明するの?

ホワイトボックステストはテスト手法の一つであり、今後プログラミングを行うなら念頭に入れておくと役に立つ知識だからです。

ホワイトボックステスト

ざっくり説明すると、機械がプログラマーさんの作った命令一覧通りに動くか確かめるテストだよ!
イメージの例:博士が作ったロボットが命令通りに動くか確かめる。

ホワイトボックステストでは、プログラマーが作成したプログラムを直接読み、プログラマーの意図通りに動くか確かめるテストです。

ホワイトボックステストのことを詳しく知りたくなった方は、ここでブラウザバックしてQiitaのキーワードの検索欄にホワイトボックステストと入力して他の方の記事を調べてみてくださいね。
これ以降は前回の記事をお読みいただいた方向けにブラックボックステストとホワイトボックステストの差をざっくりと書いていきますよ!

さて、前回の記事をお読みいただいた方は「ブラックボックステストと何が違うの?動くか確かめるんだよね?」と思っているかもしれませんが、その二つのテストはかなり違うんですよ!

では、その疑問について纏めていきましょう。

ブラックボックステストとホワイトボックステストの差

ざっくり説明すると、出来上がったものを外から見るか作っている最中のものを中から見るかだよ!
イメージ例:配信前のベータ版のゲームをプレイするか、今回作るゲームは怪獣のような敵を登場させてこんな風に倒したいからこのコマンドを用意したよ!単に倒すんじゃなくこのコマンドで倒せているか確認してね!というチェックを行うかどうか。

ブラックボックステストは初めて商品を購入したお客さんが違和感なく使えるかどうか確かめるテストであるのに対し、ホワイトボックステストは製作者側が今後商品をアップデートする上でアップデートしやすいように工夫したり、製作者(プログラマー)が意図した内容通りに動くか確認するのが主なテストです。

二つは切っても切れない存在であり、商品を作成した場合必ずどちらのテストも行います。

ただし、ブラックボックステストはこの業界未経験の初心者の方が試験するうえでいいテスト結果が出やすいのに対し、ホワイトボックステストはプログラムをある程度読める方でないとテストするのが難しいため、一人でどちらのテストも行うことはあまりありません。

尚、プロジェクトによってはブラックボックステストとホワイトボックステストを同時並行で行うところとホワイトボックステストを先に行っておいて後でブラックボックステストを行うところがありますが、それは商品の見本版(サンプル品)を提出するまでの期間(納期)が短かったり、新たに作成した機能や変更した機能が多すぎて手が回っていない場合に多く発生する現象のため、完成させる商品の目標自体は変わりません。

そのため、ブラックボックステストとホワイトボックステストをどちらも行うことが丁寧にテストすることが大事であり、その際設計者やプログラマーと連携を取って作品を作るうえでの目標像の差がないかを確認しながら行っていくことが大切です。

おわりに

いかがでしたか?
ホワイトボックステストは暗号(プログラミング言語)を解読できる専門的な知識があることを前提に行うテストで、ブラックボックステストより難易度が高く製作者(プログラマー)との連携が大切だということを覚えておいていただけると幸いです。
この記事を見て「ホワイトボックステストについてもっと詳しく知りたい!」と思った方は、是非Qiitaの他の専門的なことが書かれている記事をご覧になってくださいね。

sakuraki11
文系プログラマーです。よろしくお願いいたします。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした