[Seasar-user:13894] [Teeda] test の時 Dbflute 関連部分で nullPointException が。。

Yuu [E-MAIL ADDRESS DELETED]
2008年 4月 23日 (水) 16:04:02 JST


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

テストを行う際解消し難い問題があって投稿しております。
DBFluteを使って下記のロジックを行うメソッドをJUnitでテストして
おりますが。。


public boolean userCheck(){
        final Class<SimpleUserdetails> entityType = SimpleUserdetails.class;
        final SimpleselectUserdetailspmb pmb = new SimpleselectUserdetailspmb();
        
        pmb.setUserid("test");
        
        final List<SimpleUserdetails> resultList =  userdetailsBhv.outsideSql().selectList("sql/userdetails/selectuserdetails.sql",pmb, entityType);
        
        if (resultList.size() > 0){
            return true;  
        }
        else{
            return false;
        }
        
    }

----
selectuserdetails.sqlは下記の様になっています。

-- #SimpleUserdetails#
-- !SimpleselectUserdetailspmb!
-- !!String userid!!

select * from userdetails 
/*BEGIN*/ where
/*IF pmb.userid!= null*/userid=/*pmb.userid*/'ag01'/*END*/
/*END*/

---
テストの為に下記の様なメソッドをテストクラスで使っています。
@test
public void testUserCheck() {
        
        Class result = registerPage.userCheck();    

        assertTrue(result);
    }

テストクラスはS2TestCaseを継承しています。
普通の時はちゃんと動いてるファイルたちですが、
テストする時は
final List<SimpleUserdetails> resultList =  userdetailsBhv.outsideSql().selectList("sql/userdetails/selectuserdetails.sql",pmb, entityType);

部分でnullPointExceptionが起きます。
System.out.println();でpmbとentityTypeを出力してみたら
値は入っています。(要するにpmbとentityTypeはnullではない。)
どのでnull値があって
java.lang.NullPointerException
    at sampleproject.web.login.RegisterPage.usercheck(RegisterPage.java:77)

とJunitウィンドウに出るか分かりません。。

DBfluteを使う時は別にテスト方がありますか。
DBfluteとは関係ない事ですか。

お答えお願いいたします。。

 

 
---------------------------------
GANBARE! NIPPON! Win your ticket to Olympic Games 2008.
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: http://ml.seasar.org/archives/seasar-user/attachments/20080423/903e7c7c/attachment-0001.html 


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