Transcript Document
プログラミング/単体試験 について ハノイ工科大学 HEDSPI IT日本語 講師: 権代 祥一 1 プログラミング/単体試験の 位置付け(例) 顧客要求 要件定義 外部設計 内部設計 検証 検証 検証 検証 受入試験 運用試験 総合試験 結合試験 プログラミング/単体試験 2 プログラミングの際の注意 • コメントを日本語で書くこと • コメントを多く入れること • 何のプログラミング言語でもよ い。 • 他のマシンでソースコードが 見られること。 3 単体(モジュール)試験 • ホワイトボックス試験 • ブラックボックス試験 を実施する。 4 ホワイトボックス試験 • モジュールの内部構造に着目 して行なう試験のこと • デバグログを活用すると効率 が上がる。 5 ブラックボックス試験 • モジュールの入力と出力に着 目して行なう試験のこと。 • ドライバやスタブを活用する。 • ドライバやスタブからデバグロ グを出力して確認すると効率 が上がる。 6 単体試験での指針 • バグ原因の多くは初期化忘れと 資源解放忘れが最も多い。 • バグは動かしたことのないロジッ クに存在し、確認ミスで見逃され る。 • 微妙な違いや異変や違和感を無 視せず原因を追求する。 7 結合試験の位置付け(例) 顧客要求 要件定義 外部設計 内部設計 検証 検証 検証 検証 受入試験 運用試験 総合試験 結合試験 プログラミング/単体試験 8 結合試験は・・・ • 内部設計が正しいかどうかを 検証するための試験 • プログラミング工程の時に 結合試験仕様書を作成しておく。 • 内部設計書を元に作成する。 9 結合試験仕様書に何を書くか? • 試験日、確認日 • 試験カテゴリ(大、中、小項目) • 試験項目、試験方法、試験デー タ概要、試験者 • 確認項目、確認方法、確認者 • 試験合否欄 10 結合試験仕様書作成での指針 • 少ないテストで多くの確認をす るように工夫する。 • 網羅性を高くするように工夫 する。 • 常に5W1Hを意識して書く。 11 結合試験仕様書をどう書くか? 各チームで工夫して 書いてください。 12 バグの潜んでいる場所 • 初めて動かしたロジックに潜 む。 • 試験時の確認ミスに潜む。 • メンバのコミュニケーションミス に潜む。 • 自分の鈍感さの中に潜む。 13 納品について •単体試験済みのソースコー ドをCD-Rなどに焼く(1枚)。 •結合試験仕様書を2部印刷 3月28日(水)18:00締切 IT日本語教員室に提出する こと。 14 その他の試験仕様書 今後、要件定義書や外部設計書 の検証を行なうので、 • 総合試験仕様書(外部設計の検 証用) • 運用試験仕様書(要件定義の検 証用) を作成しておくべきである。 15 • • • • 総合試験仕様書 (外部設計の検証用) 最大値、最大負荷など極端な事象 の確認を書く。 性能の確認について書く。応答時 間や処理速度など。 操作性の確認、誤操作に対するふ るまいの確認について書く。 例外処理系の試験と確認について 書く。 16 運用試験仕様書 (要件定義の検証用) • シナリオを作成する。 • 書く場面での操作と出力の確 認事項を書く。 • 全ての運用を網羅できるよう にシナリオを工夫して書く。 17 障害票(バグ票)の記入と管理 • バグを発見したら、必ず障害票に 記入すること。 • 障害票をプログラムの担当者に渡 す。 • プログラムの担当者がバグの原因 を記入し、修正する。 • バグ発見者がもう一度試験をし、バ グが無いことを確認する。 18 障害票(バグ票)の監査 • 障害票は後で送りますので、 各チームで管理してください。 • 時々障害票のチェック(監査) を行います。 • 管理できていないチームは減 点対象とします。 19