矢崎です。
toru_yamamoto@....jp さんwrote:
> 山本@エプソンコーワです。
>
> 27. Unit Testingを訳しました。
> お気づきの点があればお願いします。
>
> -----------------------------------------------
> Unit Tests
>
> それぞれのクラスはユニットテストを持っていなければならない。すべてのクラ
> スのユニットテストは100%の点を取らなければならない。C3プロジェクトにおい
> て、私達はKent Beckのパブリックドメインテスティングフレームワーク−すべて
> のテストを実行し、正しいパーセントを示すGUIによって拡張されている−を使う
> 。この文章を書いた時点で、1300個以上のユニットテストがあり、それらすべて
> は100パーセントで動く。
>
> クラスが書かれる前に、私達は、ユニットテストが書かれるように勧める。
> これは、クラスが本当にあるべきものであるかに注目するのに良い方法である。
これは・・・以降の1文ですが、私は、「クラスが本来どうあるべきかに注意を向
ける」というように読みましたがいかがでしょう?
(例文)
これは、クラスが本当にどのようにあるべきかについて注意をむけるのに良い
方法である
>
> ともかく、クラスはそのユニットテストがテスト一式に入るまで使用されない。
>
使用されないのところは「終わった(完成した)とみなされない」とも読めるよう
な気がしますが、いかがでしょう?
>
> クラスがリリースされる時には、すべてのユニットテストは100パーセントで動い
> ているにちがいない。
このMustは断定ではなく義務のほうで解釈したい気もします。100%で動いて
いなければならないとか。。
> すべてだ。すなわち、もしあなたが起こす変化によって、
> 他のクラスのためのユニットテストが通らなくなるならば、あなたがリリースす
> る前に、問題は解決されているにちがいない。
このMustも義務で解釈したい気もします。
>
>
> 反論
> もし私がテストを壊した人でないとすれば?または誰かが私のクラスを誤って使
> っていたら?
テストを壊したではなく、「テストを通らなくした」みたいなほうが意味が通じやす
いような気もしますが、いかがでしょうか?
>
>
> ・あなたがリリースする前に100パーセントでユニットテストが動いたわけだ
> から、あなたがテストを通らなくしたのである。
>
> ・もし誰かがあなたのクラスを間違って使っているならば、それらがリリー
> スされた時、なぜテストは100パーセント動作したのか?あなたが変更した
> 何かが問題を起こしたのである。なぜなら、あなたが自分のコードをリリ
> ースし始める前に100%でテストが動いたとあなたは知っているから。
>
> ・たとえクラスが間違って使われても、あなたはリリースする前に問題を解
> 決する必要がある。あなたのクラスを使っている人と必要があれば組みな
> さい。
>
> ポイントを強調するために:
> すべてのユニットテストはずっと100パーセントで動かなくてはならない。
>
> ---
> オリジナル http://www.xprogramming.com/
> Copyright (c) 1999, REJeffries et al. (ronjeffries@....org)
--
矢崎博英 firo@....jp