2006年10月24日

単体テストについて

一般的なテストの手順

単体テスト(PGM単体レベル)

ユニットテスト(結合テストとも言う)PGM間の連携テスト

スルーテストA(システムテストとも言う)業務フローの順にテスト

スルーテストB(システム間の連携テスト)例)仕訳データを弥生会計に落としたりする等

ってのが、一般的なテストの順番なんでしょうかね。
※ボリュームテストやパフォーマンステストもありますが、ここでは除外

で、単体テストについてなんですが、

1.ホワイトボックステスト
2.ブラックボックステスト

の2つに一般的には分かれます。

ブラックボックステストとは
「プログラムの内部構造とは関係なく、外部から見て仕様書通りの機能を持っているか確認するテストのこと。」で、普段やってるテストのことですね

ホワイトボックステストとは
「ロジック(ルーチン)を実行して、検証する。」ってことのようです。
で、どれだけロジックが通ったかってことをカバレッジcoverage)って言います。

ここで、dbmagicで作った時に「本当にホワイトボックステストする必要があるの?」
って、最近考えています。

私の答えは、「そんなもんやらん」です。

理由
1.dbmagicでカバレッジってどうやって計るの?ロジック隠蔽されてるのに?網羅性の保障がない。

2.ホワイトボックステストするためにフローチャートを作るの?そんな時間ないでしょ。(ロジックが通ったかどうかどうやって人間が判断するのよ。)

3.dbmagicで作っている人でホワイトボックステストをしているのを見たことがない。
※「赤信号みんなで渡れば...(古っ)」とかではなく、必然的にそうなったんでしょう。

4.dbmagic以外の言語でもやらなくなってきている。
※制御系はともかく業務アプリ系ではやってませんね。工数の割りに出るバグが少ない。

って、とこですか。


posted by dbmagic at 23:28| バンコク 曇り| Comment(0) | TrackBack(0) | テストについて | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.seesaa.jp/tb/26103505

この記事へのトラックバック