- PR -

Junitのクラスパス

1
投稿者投稿内容
Mountain
会議室デビュー日: 2004/07/20
投稿数: 11
投稿日時: 2007-10-06 16:05
いつもお世話になっています。

現在JUNITを使ってテストを行っているのですが
上手くいかず行き詰っております。

<環境>
eclipse 3.2
spring 2.0
JDK1.4

hoge.project_1:実装モジュールがあるプロジェクト
hoge_test.project:テスト実行用プロジェクト(スタブクラス、テストクラスなど格納)

当初、hoge_test.projectからhoge.project_1をプロジェクト参照してテストを行っていたのですが、
hoge.project_1の一部を別プロジェクトとして分割しなければいけなくなり、
一部を移植してhoge.project_2を作成しました。
その後、hoge.project_2の再テストを行おうとしたのですが、
すでに作成済みのテストクラスがhoge.project_2ではなく、
hoge.project_1を見にいってしまいます。
hoge_test.projectのビルドパスはhoge.project_1を削除し、
hoge.project_2に変更したのですが上手くいきません。
※”hoge.project_1が見つかりません”というエラーが出てしまいます。

初歩的な質問で恐縮ですがご教授よろしくお願いします。
さいくろう
大ベテラン
会議室デビュー日: 2005/11/19
投稿数: 170
お住まい・勤務地: 川崎市
投稿日時: 2007-10-07 11:40
ソースコード中に「import hoge.project_1;」が残っているだけ、とか、
そういう話じゃなくて?
実行時にエラーになるったって、実行前のコンパイルか構成に
修正すべき点があるってことには違いないね

ところで話が変わっちゃうけど、Eclipseを使うのなら、
テストクラスは、別プロジェクトにする必要はないですよ。
つか、私はそんなことはしたことがない。

というわけで、以下はよけいかもしれんけど。

プロジェクトには、デフォルトで「src」というソースフォルダが作られます。
もう一つ、今度は手動で「test」というソースフォルダを作ります。
設定をいじらない限りは、ソースが格納されているフォルダは別、
クラスの生成先は同じ、という風にできますよ。
右クリックでJUnitクラスを作成する時に、
ソースの生成先に「test」を選択すればいいです。
Mountain
会議室デビュー日: 2004/07/20
投稿数: 11
投稿日時: 2007-10-08 13:15
ご回答ありがとうございます。

他のタスクに時間をとられていたため返信が遅れました。
申し訳ありません。

あれからいろいろ試してみた結果なんかと動くようになりました。
@一度JUNITのjarを除外して再度設定し直す。
 →変化なし。
ADJunitを使用していたのでそのプラグインを一度はずす。
 →正しく認識するようになった。

DJunitが何か影響していたのかどうかまだ調べきれていませんが・・・

>ところで話が変わっちゃうけど、Eclipseを使うのなら、
>テストクラスは、別プロジェクトにする必要はないですよ。
>つか、私はそんなことはしたことがない

CVSでリリースするときにテストクラスやらスタブクラスやらを
別にしておきたいという思想からです。

>というわけで、以下はよけいかもしれんけど

ご指摘ありがとうございます。
若輩ものゆえ参考になります。

今後ともよろしくお願いします。
さいくろう
大ベテラン
会議室デビュー日: 2005/11/19
投稿数: 170
お住まい・勤務地: 川崎市
投稿日時: 2007-10-08 17:44
テストクラスだって、CVSに加えておけばいい、
というか、加えない理由がよくわからないや。
稼働時には必要ないけど、それはbuild.xml書いてAntを使えばいいし。
Ray
ベテラン
会議室デビュー日: 2007/09/13
投稿数: 88
投稿日時: 2007-10-09 00:52
> 稼働時には必要ないけど、それはbuild.xml書いてAntを使えばいいし。

mavenという選択肢も挙げておきます。
antとの違いは、mainとtestを分けるという考えがデフォルトで入っています。
1

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