パスワードを忘れた? アカウント作成
452591 journal

tarosukeの日記: テスト駆動開発の限界

日記 by tarosuke

最近TDDを勉強しているのだが、感じたのは失望と納得とこないだの試みはそ
う外れでもないという確信だったり。

ソフトウェアはそれ自体では時間とは無関係なので時間的境界条件はソフトウ
ェアで記述できない。TDDでは要件定義をソフトウェアで行うので時間的条件
はTDDでは完全には扱えない様に思える。時間的要件はファームウェアではよ
く出て来るのでちと残念だ。

また、外部機器やハードウェアなど、ソフトウェアの「外」が関係する事象の
テストもなかなかに難しいものがある。TDDではこれに対し「自己接続テス
ト」という回答を用意しているのだが...

外部のステートを全て網羅したテストを用意するのが困難なことには変わりは
ない。とはいえ、それでも自己接続テストにより困難さはかなり軽減はするよ
うにも思える。

※自己接続テスト
テストする対象の「外」の代役となるスタブ自体をテストの一部として記述す
ることで「外」に対する動作を試験する。I/O自体のスタブを作成しない限り
本当の末端には使えないだろうけど。outbとかのマクロを作ったりすればで
きるかな?

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...