[Seasar-user:13915] [Dbflute] JUnitテストの時LabelHelperの使い方について質問があります。

Yuu [E-MAIL ADDRESS DELETED]
2008年 4月 24日 (木) 14:49:23 JST


いつもお世話になります。

Junitテストの時org.seasar.teeda.extension.util.LabelHelperのgetLabelValue
メソッドの使い方について質問しております。

RegisterPage.javaクラスの

import org.seasar.teeda.extension.util.LabelHelper;
..中略..

public class RegisterPage {
     public LabelHelper lp;
..中略..


     public Class doSave() {
		boolean userchk;
		userchk = usercheck();
		
		if (userchk){
			userexistmsg = lp.getLabelValue("userexist");
			System.out.println(lp + "  original lp");
			return null;
		}			
		else
		{
			insert();
			return LoginPage.class;
		}
	}

をテストする時
userchkがtrueの場合userexistmsg = lp.getLabelValue("userexist");
部分でnullPointExceptionが発生しています。



テストソースは

@Test
	public void testDoSave() {
		// ## Arrange ## 
		RegisterPage page = new RegisterPage();
        page.userdetailsBhv = this.userdetailsBhv;
		page.lp = this.lp;
		
		System.out.println(lp + " lp");
		// ## Act ##
		page.uid = "test";
		Class result = page.doSave();	
		assertNull(result);
		assertNotNull(registerPage.userexistmsg);
	}

です。Class result = page.doSave(); 部分でnullPointExceptionが発生します。

因みに
LabelHelper lp;
UserdetailsBhv userdetailsBhv;
はテストクラスの宣言部に宣言されています。

userdetailsBhvは問題ありません。(値がちゃんと入ってる)

label.propertiesファイルがテストの時は接近できないですか。
system.out.printlnで確認して見ても
普通の時はlpに何か値が入っていますが(ちゃんと動いてる、propertiesファイル
のuserexist=.. 部分をちゃんと読み込んでる)
テストの時はnullが入っています。
propertiesファイルも色んな所に置いて見ましたが解消できません。

解消する方法を御存じの方はお答えお願いいたします。




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