Javaの道 Javaに関する
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道 >  掲示板 >  掲示板(antを使用したSpringアプリケーションに対するjunitテスト)
閲覧数:1482
掲示板(antを使用したSpringアプリケーションに対するjunitテスト)
名前
匿名
題名 antを使用したSpringアプリケーションに対するjunitテスト
質問内容

質問を評価する
(0ポイント)
Springを使用したアプリケーションに対して
jUnit(DBUnit)のテストをAntタスクで実行しようと考えています。

実行させた結果をざっくり見てみると
2つのエラーによって動作していません。

1.No runnable methodsが出る
テストクラスは@Testを使用したJUnit4形式を採用しています。
test〜というテストメソッドは動作しているので、
Antが以前のJunit形式で動作しているのかなと想定しています。
調べたところテストランナーをJUnit4用にすればいいのかと思ったので、
Spring用のJUnit4のテストランナーを指定した(@RunWith(SpringJUnit4ClassRunner.class))のですが、
相変わらず動作しません。

2.Autowiredが効かない
@Autowiredで指定したオブジェクトが生成されていないらしくエラーになってしまいます。
DBが絡むテストに関してはDBUnitを使用しています。

〜実際の出力〜
The parameter 'XXXX' must not be null 

java.lang.NullPointerException: The parameter 'XXXX' must not be null
at org.dbunit.DataSourceDatabaseTester.<init>(DataSourceDatabaseTester.java:60)
at org.dbunit.DataSourceBasedDBTestCase.newDatabaseTester(DataSourceBasedDBTestCase.java:63)
at org.dbunit.DatabaseTestCase.getDatabaseTester(DatabaseTestCase.java:109)
at org.dbunit.DatabaseTestCase.setUp(DatabaseTestCase.java:151)

この2点が主にエラーとして出力されるのですが、
原因がSpringにあるのか、JUnitにあるのか、Antにあるのか、
はたまた実装方法にあるのかが特定できずに困っています。
同じような現象に遭遇した方はいませんでしょうか?

使用しているバージョン
・Java - 1.6
・spring - 3.1.1
・junit - 4.8.2
・dbunit - 2.4.8
・Ant - 1.8.4
質問日時 2013-03-01 15:34:36
名前
匿名
回答内容

回答を評価する
(0ポイント)
DatabaseTestCase を敬称していたら JUnit3 で実行され
ていないかい?
回答日時 2013-03-05 14:39:42
名前
匿名
回答内容

回答を評価する
(0ポイント)
テストクラスはDataSourceBasedDBTestCaseを継承しています。

eclipse上からjUnitを実行すると@Testを判断してテストされているので、
Junit4で動作するようなソースにはなっていると思います。
回答日時 2013-03-06 14:28:33
名前
匿名
回答内容

回答を評価する
(0ポイント)
で、発生するミニマムコードは?
回答日時 2013-03-07 13:19:45

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。



このページのトップへ
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道_CopyrightJavaの道