PowerPoint プレゼンテーション

テストの種類
要求分析
運用テスト
(ユースケース、 顧客
オブジェクトモデル)
システムテスト
システム設計
(クラス設計)
SE
結合テスト
プログラミング
(コーディング、単体テスト)
プログラマ
All Rights Reserved Copyright © 2004, Takashi Kobayashi
1
テストの種類
テストの種類
内容
実施する人
備考
単体テスト
Unit Test
プログラマ
クラスを単体で動かして、その
内部ロジックを検証する。ソース
コードを見て、全てのパスを通
るようなテストケースを作成する。
ホワイトボッ
クステスト
結合テスト
Combination
Test
複数のクラスを結合して動かし SE
て、全体として正しく機能するか
を検証する。主に、クラス間のイ
ンタフェースの不備を見つける。
ホワイトボッ
クステスト
システムテスト システム全体の機能と性能を検 SE
証する。本番環境に近いテスト
System Test
環境を作り、実務に即したテスト
ケースを作る。
ブラックボッ
クステスト
運用テスト
ブラックボッ
クステスト
顧客が実際に運用してみる。シ 顧客
ステムが顧客要求を満たしてい
るか否かを明らかにする。
All Rights Reserved Copyright © 2004, Takashi Kobayashi
2
ホワイトボックステスト
システムの内部構造を念頭においてテストする。プログラムに
基づくテスト(Program-Based Test)。
■テストケース
Start
全文テスト:全ての文を少な
くとも一回は実行する。
1
No X=1 ?2 Yes
①1-2-3-4-5-6
3
命令1
4 Yes
No Y=1 ?
命令2
End
6
分岐テスト:全ての分岐を少
なくとも一回は実行する。
①1-2-3-4-5-6, ②1-2-4-6
5
全パステスト:全てのパスを
少なくとも一回は実行する。
①1-2-3-4-5-6, ②1-2-4-5-6, ③1-2-3-4-6, ④
1-2-4-6
All Rights Reserved Copyright © 2004, Takashi Kobayashi
3
ブラックボックステスト
システムの内部構造を見ず、入力と出力の関係に注目してテス
トする。仕様に基づくテスト(Specification-Based Test)。
■テストケース
合格者数(n)
志願者数(N)
同値分割:入力条件の有効
値と無効値に注目。
①N=50,000, ②N=500, ③n=-100, ④n=200
志願者数(N) ÷合格者数(n)
=倍率(p)
N:0以上10,000以下の整数
n:0以上500以下の整数
N, nが範囲外:エラー表示
Pが1以上:黒色文字
Pが1より下:赤色文字
倍率(p)
文字色
エラー表示
限界値分析:入力条件の上
限・下限に注目。
①N=10,000, ②N=0, ③n=500, ④n=0
原因結果グラフ:入出力デー
タの因果関係に注目。
①N=500, n=100 →文字黒, エラー無表示
②N=500, n=10000 →文字赤, エラー表示
All Rights Reserved Copyright © 2004, Takashi Kobayashi
4
テストケース設計演習
<ホワイトボックステストのケース>
インターネット入試システムの書類審査判定メソッドのテスト
ケースを作成せよ。ただし、以下の判定アルゴリズムに基づい
て、全パスを通るテストケースを考えること。
①学業成績、英検、論文の各々について、5段階で評価点が与
えられるものとする。
②学業成績、英検、論文の評価点がいずれも3以上ならば、書
類審査合格とする。
③ルール2で不合格となっても、学業成績、英検、論文の評価
点の平均が3.5以上ならば、書類審査合格とする。
All Rights Reserved Copyright © 2004, Takashi Kobayashi
5
テストケース設計演習
<単体テスト仕様書>
テストケース
学業成績
英検
T1
1
1
論文
1
合格
不合格
○
T2
T3
T4
T5
T6
T7
T8
T9
All Rights Reserved Copyright © 2004, Takashi Kobayashi
6
テストケース設計演習
<ブラックボックステストのケース>
インターネット入試システムの選抜サブシステムのテストケー
スを作成せよ。ただし、以下の仕様に基づいてテストケースを
考えること。
①学業成績、英検、論文の評価点は1以上5以下の実数であり、
教官が評価結果を登録する際にチェックする。
②学業成績、英検、論文の正常な評価点が全て登録されたと
きに限り、書類審査の判定処理を行なう。
③学業成績、英検、論文の評価点がいずれも3以上、あるいは、
平均が3.5以上ならば書類審査合格とする。
④面談の評価点は1以上5以下の実数であり、教官が評価結
果を登録する際にチェックする。
⑤書類審査の平均と面談の評価点の合計が合格ライン以上な
らば総合判定合格とする。
All Rights Reserved Copyright © 2004, Takashi Kobayashi
7
テストケース設計演習
<システムテスト仕様書>
テストケース
T1
T2
条件
結果
1
学業成績、英検、論文のすべての
評価点を正常値として登録する。
登録を受付け、書類審査
判定を行なう。
2
学業成績、英検、論文のいずれか 登録を受付けず警告文を
の評価点を異常値として登録する。 表示する。
1
2
T3
1
2
All Rights Reserved Copyright © 2004, Takashi Kobayashi
8
テストドライバとスタブ
テストドライバ:必要な引数を
設定してテスト対象クラスを
呼び出す上位のダミークラス。
スタブ:テスト対象クラスから
呼び出される下位のダミーク
ラス。
Dummy {
Real()
id=1;
Name=GetName(id)
;
Print id, Name;
GetName {
}
GetName (id)
Print id;
Print “GetName”;
Return(“Senshu”);
}
All Rights Reserved Copyright © 2004, Takashi Kobayashi
9
結合テストの進め方
種別
方法
メリット
デメリット
トップ
ダウン
最上位のクラスから順
次下位クラスを連結す
る。下位クラスのかわ
りにスタブを使う。
・重要なエラーを早期
に発見できる。
・重要な上位クラスを
繰り返しテストできる。
・作業の分散が難し
い。
・スタブを作る必要が
ある。
ボトム
アップ
最下位のクラスから順
次上位クラスを結合す
る。テストドライバから
呼び出す。
・分担して並行作業が ・重要なエラーが後
できる。
になって発見される。
・共通クラスのテスト ・テストドライバを作
を先行して実施できる。 る必要がある。
サンド
イッチ
トップダウンとボトム
・適切に行なえば両
アップを同時に進める。 者のメリットを享受で
実務において一般的 きる。
にとられる方法。
ビッグ
バン
全てのクラスを一度に 小規模なシステムの
連結してテストする。
テストに向いている。
-
-
All Rights Reserved Copyright © 2004, Takashi Kobayashi
10
ユースケースのレベル
要約レベル
 複数のユーザ目的を含む。
 ユーザ目的の時系列を示す(数時間~数年)。
Ex. 保険の契約=見積り+契約+支払請求+解約
ユーザ目的レベル
 主アクターの目的を達成する。
 1人のユーザが中断なしに行える(2分~20分)
Ex. 本を購入する、新規の顧客を登録する
サブ機能レベル
 ユーザ目的を達成するのに必要なサブ機能を実行。
Ex. ログインする、商品を検索する、商品を買物かごに入れる
All Rights Reserved Copyright © 2004, Takashi Kobayashi
11
2004年度 期末テスト実施要領
•
•
•
日時:12月20日(月) 10:40~12:10(2限)
場所:4号館2階 420教室(いつもの教室)
試験範囲:授業でやった範囲
(今までのハンドアウトは私のホームページに載せてあります)
•
注意事項:
1. 学生証を必ず携帯すること。
2. 書籍、ハンドアウト、メモなど、紙類の持ち込みは全面
禁止。
3. 携帯、電卓、PDAなど、電子機器の持ち込みも全面禁
止。
All Rights Reserved Copyright © 2004, Takashi Kobayashi
12