アプリ版:「スタンプのみでお礼する」機能のリリースについて

抽象クラス内に実装メソッドと抽象メソッドがある場合に、
そのクラスをJUNITでテストしたいと思っています。
通常のクラスであれば、そのクラスに対するテストクラスを
作成して、テストクラス内でテスト対象クラスをnewして
テストケースを記述していくと思いますが、
上記のような抽象クラスの場合は、
どういった形でテストクラスを作成すれば良いのでしょうか?
抽象クラスはnewできないので、
抽象クラスを実装したクラスをまず作成して
そのクラスに対するテストクラスを作成するのでしょうか?
お薦めの方法や一般的な方法があれば教えてください。

以上、よろしくお願い致しますm(__)m

【環境】
JDK1.4.2
JUNIT3.8.1

A 回答 (1件)

こんにちは。


一般的な方法かどうかは分かりませんが、私が実際にプロジェクトで実施した方法は、
・テスト用に抽象クラスを継承したクラスを作成
・そのクラスに対するテストクラスを作成
でした。

抽象クラスの実装メソッドは、抽象クラスのテストとした方がいいと思います。
実装クラスで行おうとすると、複数の実装クラスがあるときにどの実装クラスでテストをするべきかコントロールする必要があります。
その結果、テストが漏れていた、といった苦い経験があったためです。

あとは命名ルールを決めておけばよいと思います。

 テスト対象クラス=AbstractSample

だったら、

 テスト用の実装クラス=ConcreteSample
 テストクラス=AbstractSampleTest

というような感じですね。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。
参考にさせて頂きます!

お礼日時:2005/03/10 00:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています