【てすと】

テスト とは?

最終更新:
💡 ソフトウェアの「健康診断」、動かす前にちゃんと動くか確かめる仕組み

テストは、ソフトウェアの問題を見つけ、品質を評価する活動です。単体・結合・E2Eの違い、期待結果の決め方、自動化と全組合せを試すことの限界を説明します。

📌 このページのポイント
ログインを、違う範囲で確かめる単体入力の判定部品を確認結合認証との接続連携を確認E2E画面から利用✓ 期待する結果を先に決める空欄なら、登録せず理由を表示するテストの範囲は、目的とリスクで選ぶ
部品・連携・利用者の流れを確かめる例。テストの種類は、この3つだけではありません。
ひよこ ひよこ
動いていれば、テストは要らない?
ペンギン先生 ペンギン先生
普段の入力で動いても、空欄や境界の値で失敗することがあるよ。たとえば「名前は必須」という仕様なら、入力した名前で登録できることに加え、空欄では理由が表示されて登録されないことも確かめる。何を期待するかを先に決めるのが大事だね。
ひよこ ひよこ
単体・結合・E2Eって、何が違う?
ペンギン先生 ペンギン先生
単体は関数などの部品、結合は部品やシステム間の連携、E2Eは利用者の一連の流れを通して確認するイメージだよ。ログインなら、入力の判定、認証サービスとの接続、画面からログインして利用する流れをそれぞれ確かめる。これ以外にも受け入れテストなどがあり、3種類がすべてではないんだ。
ひよこ ひよこ
自動化すれば、人は何もしなくていい?
ペンギン先生 ペンギン先生
繰り返す確認をテストコードで実行できるよ。変更のたびにCIで実行する使い方もある。ただし、期待結果やケースの選定は必要だし、実行時間はテストや環境による。使いやすさの探索や画面の目視など、自動化したケースだけでは分からないこともあるね。
ひよこ ひよこ
全部の組合せを試すのが正解?
ペンギン先生 ペンギン先生
単純な範囲なら全部を試せるけれど、一般には組合せが多くなるよ。独立した3つの欄に各100通りの値があれば100万通り。重要なリスク、通常・異常の入力、境界値などからケースを選ぶ。件数だけでなく、何を確かめたかを見よう。
ひよこ ひよこ
テストが全部通れば、バグはゼロ?
ペンギン先生 ペンギン先生
選んだ条件で期待どおりだったという結果で、問題がないことの完全な証明ではないよ。動かすテストだけでなく、仕様やコードのレビューも役立つ。問題を直したら再確認し、ほかの動作に影響していないかも確かめよう。テストは修正の判断材料を増やしてくれるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「テスト」って出てきたら「ソフトウェアの問題を見つけ、品質を確かめる活動」と思えばだいたいOK!
📖 おまけ:英語の意味
「Test」 = 試験・検査
💬 動作を試すだけでなく、仕様やコードをレビューして問題を探す活動も含むよ。

参考資料

← 用語集にもどる