- PR -

JunitでのSingletonクラスのテストについて

1
投稿者投稿内容
Masayuki2501
常連さん
会議室デビュー日: 2006/01/02
投稿数: 25
投稿日時: 2007-06-24 14:26
こんにちは。

現在、JUnitを使用して、Singletonクラスのテストを行っていますが、
オブジェクトの作成の仕方で、JUnitのテストがエラーになってしまいます。

=== @Junitでエラーになるクラス ===
public Test {
private static Test instance = new Test();
public static getInstance() {
return instance;
}
=== @Junitでエラーになるクラス ===


これを以下のように書き換えるとエラーにはなりません。

=== AJunitでエラーにならないクラス ===
public Test {
private static Test instance = null
public synchronized static getInstance() {
if (instance == null) {
instance = new Test();
}
return instance;
}
=== AJunitでエラーにならないクラス ===


Aでは、JUnitのテストは実行できますが、
「double-checked locking」のケースに当てはまってしまいます。

@のケースでJUnitを通したいのですが、
ご存知の方、ご教授いただければ幸いです。
朝日奈ありす
大ベテラン
会議室デビュー日: 2007/05/02
投稿数: 189
お住まい・勤務地: 最北の地
投稿日時: 2007-06-24 15:31
エラーメッセージをぐぐるとでてくるようなきがします。
どういうエラーでとまってるのか解りませんので私に言えることはありません。
1

スキルアップ/キャリアアップ(JOB@IT)