01 / IT FOUNDATION
この講座で、何をできるようにするか。
仕様から正常・異常・境界のテストを作り、再現手順付きの不具合報告と自動テストを残す。
目安18時間。説明・調査・演習・成果物作成・レビューを含む学習計画です。本文を読むだけでこの時間の実習を完了したことにはなりません。進み方と経験に応じて調整します。
学習目標と確認ポイント詳しく見る
- 品質とリスクから考えるを説明し、品質リスク一覧を作る。
- 単体・結合・システムテストを説明し、テストの層の図を作る。
- 正常系・異常系・境界値を説明し、境界値テスト表を作る。
- 自動テストと再現性を説明し、自動テストと実行結果を作る。
- 回帰テストと修正確認を説明し、修正前後のテスト記録を作る。
- 伝わる不具合報告を説明し、再現手順付き不具合報告を作る。
ブラウザーで本文・アニメ・問題を確認できます。実機演習は会社が用意した学習環境を使い、Python・Linux・Git・DB等の準備状況を確認してから進めます。
Python・SQL・ログ・架空パケット表・テスト・APIのスターターと説明書を同梱しています。APIは認証・認可等を受講者が追加する未完成の学習用で、公開用完成品ではありません。
共通演習キットをダウンロード
02 / IT FOUNDATION
仕組みを理解し、手を動かして確かめる。
品質とリスクから考える
詳しく見る
学習ブロック 1 / 目安3時間(説明・調査・演習・記録・レビュー)
テストは動いた例を並べるだけでなく、失敗すると利用者へどんな影響があるかから優先順位を決めます。機能の正しさ、使いやすさ、性能、安全性、復旧などの要求を、検証可能な条件へ変えます。
予約の二重登録、他人操作、通信失敗、人数上限について、影響と優先度を付ける。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
単体・結合・システムテスト
詳しく見る
学習ブロック 2 / 目安3時間(説明・調査・演習・記録・レビュー)
単体では関数等の小さな範囲、結合では複数要素の接続、システムでは利用者の一連の使い方等を確認します。境界の取り方は実装と体制で合意します。単体が全て通っても、画面からDBまでつながることは別に確かめます。
同じ予約作成機能について、検証関数、APIとDB、画面の操作の3層へテストを分ける。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
正常系・異常系・境界値
詳しく見る
学習ブロック 3 / 目安3時間(説明・調査・演習・記録・レビュー)
人数1〜10を許可するなら、1と10だけでなく0と11等も確認します。空欄、型違い、重複、権限不足、存在しない対象も異なる条件です。何を入れて何が返り、何が保存されないかまで期待結果へ書きます。
入力と期待結果を表にし、1、10、0、11、空文字、文字列を分けて検証する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
自動テストと再現性
詳しく見る
学習ブロック 4 / 目安3時間(説明・調査・演習・記録・レビュー)
同じ入力で同じ期待結果を確かめる処理を自動化します。テスト同士でデータを共有しすぎず、初期状態を用意します。時刻や乱数、外部接続に依存する場合は条件を制御し、失敗を再現しやすくします。
同梱のunittest例を実行し、わざと検証条件を壊して失敗することも確認する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
回帰テストと修正確認
詳しく見る
学習ブロック 5 / 目安3時間(説明・調査・演習・記録・レビュー)
修正箇所が直ったことに加え、以前の機能を壊していないかを確認します。見つかった不具合は、その条件で失敗するテストを加え、修正後に通ることを示します。テスト数の多さだけを品質の保証としません。
上限判定を修正する前に不具合を再現し、修正後に一覧・追加・取消も確認する。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
伝わる不具合報告
詳しく見る
学習ブロック 6 / 目安3時間(説明・調査・演習・記録・レビュー)
環境、初期データ、操作手順、期待結果、実際の結果、頻度、影響をそろえます。「動かない」だけでは原因を再現できません。画像やログには必要な範囲だけを添え、秘密情報を含めないようにします。
別の人が同じデータと手順で再現できる報告を書き、修正確認の条件も付ける。
前提・操作・観察結果・理由・未確認を分けて残します。手順を他の人に説明し、同じ入力で同じ結果になるか確認してください。
自動テストが失敗を検出するか試す
python3 -m unittest -v 期待:7テスト成功(集計、CSV不正、空入力、人数境界、件名境界、SQL、復元)。 課題:人数の上限を誤って11へ変更 → テストで失敗を確認 → 正しい仕様へ修正。 成功するテストだけを追加せず、意図した不具合を検出できるか確認する。 APIを完成させたら、認証・認可・同じ枠への競合等のテストも自分で追加する。
03 / IT FOUNDATION
仕事のアニメ:テストと品質管理を考える。
新人・アオイさんと先輩・ミナトさんの会話で、「テストと品質管理」を学びます。最初の場面は「テストは動いた例を並べるだけでなく、失敗すると利用者へどんな影響があるかから優先順位を決めます。」。何を確かめ、どう対応するかを順に見ていきましょう。
テストは動いた例を並べるだけでなく、失敗すると利用者へどんな影響があるかから優先順位を決めます。
約12秒ごとに場面が切り替わります。再生中も一時停止でき、「前へ」「次へ」で自分のペースで読めます。最終場面で停止します。
アニメの内容をまとめて文章で読む
1. 品質とリスクから考える
アオイ:テストは動いた例を並べるだけでなく、失敗すると利用者へどんな影響があるかから優先順位を決めます。
学習ポイント:品質リスク一覧
2. 単体・結合・システムテスト
ミナト:単体では関数等の小さな範囲、結合では複数要素の接続、システムでは利用者の一連の使い方等を確認します。
学習ポイント:テストの層の図
3. 正常系・異常系・境界値
アオイ:人数1〜10を許可するなら、1と10だけでなく0と11等も確認します。
学習ポイント:境界値テスト表
4. 自動テストと再現性
ミナト:同じ入力で同じ期待結果を確かめる処理を自動化します。
学習ポイント:自動テストと実行結果
5. 回帰テストと修正確認
アオイ:修正箇所が直ったことに加え、以前の機能を壊していないかを確認します。
学習ポイント:修正前後のテスト記録
6. 伝わる不具合報告
ミナト:環境、初期データ、操作手順、期待結果、実際の結果、頻度、影響をそろえます。
学習ポイント:再現手順付き不具合報告
04 / IT FOUNDATION
演習を完成させ、成果物をレビューする。
演習1
正常・異常・境界のテスト項目を作り、仕様との対応を示す。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
演習2
Pythonの自動テストを実装し、失敗→修正→成功を記録する。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
演習3
相手に再現してもらい、不足情報を直した不具合票を完成させる。
- 対象・環境・入力データ・期待結果を記録する。
- 上の解説と各ブロックの実習手順を使って作業する。
- 結果を期待と比較し、違いがあれば条件を一つずつ確かめる。
- 成果物・再現手順・分かったこと・未確認を残してレビューする。
正しい用語で説明できるか/入力と結果が対応しているか/正常だけでなく失敗する条件も扱ったか/他の人が再現できるか/残る課題を隠していないか。
05 / IT FOUNDATION
確認問題:答えより、理由を説明する。
全5問。選ぶと解説が表示されます。何度でも選び直せます。
回答済み 0 / 5問
06 / IT FOUNDATION
成果物を残し、理解と未確認を分ける。
架空データを使い、根拠と結果を自分の言葉でまとめます。回答とメモは自動保存・外部送信しません。残したい内容はコピーするか、成果物ファイルへ記入してください。
07 / IT FOUNDATION
説明・実装・記録を、一つの成果へつなげる。
仕様から正常・異常・境界のテストを作り、再現手順付きの不具合報告と自動テストを残す。
- 品質リスク一覧
- テストの層の図
- 境界値テスト表
- 自動テストと実行結果
- 修正前後のテスト記録
- 再現手順付き不具合報告
08 / IT FOUNDATION
