![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
抽象クラス内に実装メソッドと抽象メソッドがある場合に、
そのクラスをJUNITでテストしたいと思っています。
通常のクラスであれば、そのクラスに対するテストクラスを
作成して、テストクラス内でテスト対象クラスをnewして
テストケースを記述していくと思いますが、
上記のような抽象クラスの場合は、
どういった形でテストクラスを作成すれば良いのでしょうか?
抽象クラスはnewできないので、
抽象クラスを実装したクラスをまず作成して
そのクラスに対するテストクラスを作成するのでしょうか?
お薦めの方法や一般的な方法があれば教えてください。
以上、よろしくお願い致しますm(__)m
【環境】
JDK1.4.2
JUNIT3.8.1
No.1ベストアンサー
- 回答日時:
こんにちは。
一般的な方法かどうかは分かりませんが、私が実際にプロジェクトで実施した方法は、
・テスト用に抽象クラスを継承したクラスを作成
・そのクラスに対するテストクラスを作成
でした。
抽象クラスの実装メソッドは、抽象クラスのテストとした方がいいと思います。
実装クラスで行おうとすると、複数の実装クラスがあるときにどの実装クラスでテストをするべきかコントロールする必要があります。
その結果、テストが漏れていた、といった苦い経験があったためです。
あとは命名ルールを決めておけばよいと思います。
テスト対象クラス=AbstractSample
だったら、
テスト用の実装クラス=ConcreteSample
テストクラス=AbstractSampleTest
というような感じですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- 予備校・塾・家庭教師 塾の先生にひかれた? 1 2022/10/04 23:13
- 中学校 終わった…。 中2です。いろいろと終わりました…。 1つ目が塾…。私の塾では学校のテスト前(中間テス 10 2022/05/24 17:55
- 予備校・塾・家庭教師 浪人生です。 予備校の授業で、予習復習の時間をしっかりとって理解もできてるのですがどうしても時間が余 1 2022/04/28 22:26
- Excel(エクセル) Excelで全クラスのランキング表を作成したい 4 2022/05/24 15:28
- 高校 クラス一位に戻りたいのですが、 4 2023/06/11 17:41
- 子供・未成年 私の学校の教育の仕方がおかしい? 4 2022/10/30 17:25
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 15:14
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
Junitテストでvoid戻り値メッソドをテストする方法
Java
-
使用しているJUnitのバージョン確認の方法
Java
-
[JAVA]try 内の変数を外で!?
Java
-
-
4
Eclipseでクラスファイルが生成されない
Java
-
5
Java リフレクションについて
Java
-
6
JUnitのテストメソッドごとのメモリの確保とかの話
Java
-
7
構文エラーのやり直しについて
JavaScript
-
8
ネストしたenumへのリフレクションによるアクセス
Java
-
9
Eclipseのアンインストールの仕方
Java
-
10
djUnit コンストラクタがprivateでテストが行えない
Java
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C# 「データが失なわれる可能性...
-
interface,extend,implementの...
-
Javaで下線
-
javaのクラスの分け方について...
-
「継承されたメソッドの可視性...
-
Javaでタスクシステムを作るの...
-
(vba)他のアプリケーションの右...
-
C++ヘッダの肥大化
-
compareToにおける「自然順序付...
-
オブジェクト指向 ボールの衝突
-
publicフィールドの使いどき
-
interfaceとabstract
-
インターフェースとは
-
C言語のプログラムをJavaに
-
インターフェースの利点は?
-
スタックで成績表を作るプログ...
-
抽象クラスとインタフェースの...
-
抽象クラスのエラーが出ます
-
単体テストのテストケースにて...
-
markメソッドについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
interface,extend,implementの...
-
「ラッパークラス」の存在意義...
-
(vba)他のアプリケーションの右...
-
抽象クラスをJUNITでテストする...
-
オーバーライドとラッパーの違い
-
C# 「データが失なわれる可能性...
-
【C#】クラスのコンストラクタ...
-
JTextFieldの入力制限
-
c++でのヘッダーファイルの循環...
-
vb.net 自作プロパティの削除に...
-
「継承されたメソッドの可視性...
-
ASP.NETでの共通コードの書き方...
-
Javaのインスタンス化の構文の...
-
Javaで下線
-
メソッドの引数にクラス名を渡す
-
VB DLLプロジェクトについて
-
C#からDLLを呼びたいのですが・...
-
インターフェース型の使い方が...
-
委譲って何ですか?
-
C# 継承の問題で programに示さ...
おすすめ情報