[Seasar-user:16996] [S2Unit]テスト実行時にNullPointerException

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2009年 2月 25日 (水) 12:56:21 JST


toriです。

先日アドバイスいただいたhtmlページ生成をServiceとして
作成し、テストをしようとS2Unitでテストケースを作成しました。

現在、NullPointerExceptionが発生しています。

ページ生成メソッドにはentityを渡してやるので、テスト
内では、entityを作って中身はdummyをセットしようとして
るのですが。

エラーメッセージからするとEntityがちゃんと作られて
いないように思います。
S2ではnewしなくても良いと思ったのですが・・

NewsServiceTest.java

package flex.news.service;

import org.seasar.extension.unit.S2TestCase;
import org.seasar.framework.container.SingletonS2Container;

import flex.news.service.NewsService;
import flex.news.entity.NewsEntity;

import java.util.Date;
import java.text.*;

/**
 * {@link NewsService}のテストクラスです。
 * 
 * @author 
 */

public class NewsServiceTest extends S2TestCase {

	private NewsService newsService;
	private NewsEntity newsdata;
	
    /**
     * 事前処理をします。
     * 
     * @throws Exception
     */
    @Override
    
	protected void setUp() throws Exception {
		super.setUp();
        include("app.dicon");
	}
    /**
     * {@link #newsService}が利用可能であることをテストします。
     * 
     * @throws Exception
     */
    public void testAvailable() throws Exception {
        assertNotNull(newsService);
    }

    public void testCreateDePage() throws Exception{

    	//dummyデータ作成
    	newsdata.id = 1111; ←ここでエラー発生してます。
    	newsdata.title = "テストニュース";
    	newsdata.content = "テストニュースです
    	//日付データ作成
    	Date newsdate = DateFormat.getDateInstance().parse("2009/04/01");
    	newsdata.newsdate = newsdate;
       	Date opendate = DateFormat.getDateInstance().parse("2009/04/04");
        newsdata.opendate = opendate;
 
        newsService.produceNewsDetailPage(newsdata);
        
        System.out.println("create page!!");
    	
    }

}

エラーメッセージ
java.lang.NullPointerException
	at flex.news.service.NewsServiceTest.testCreateDePage(NewsServiceTest.java:46)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at junit.framework.TestCase.runTest(TestCase.java:164)
	at org.seasar.framework.unit.S2FrameworkTestCase.doRunTest
<以下略>

以上何かお分かりでしたら教えていただけると助かります。

tori


Seasar-user メーリングリストの案内