- PR -

EJBの単体テスト方法について

1
投稿者投稿内容
stepx2
会議室デビュー日: 2003/11/05
投稿数: 6
投稿日時: 2003-11-14 15:20
お世話になっております。
EJBの単体テストの方法についてご質問させてください。

EJB、特にローカルインターフェイスを用いたCMP EntityBeanの単体テストを
簡単に行いたいと思っています。
EJB初心者の私にはまず初めに、
テスト用のSessionBean(リモートインターフェイス)を作成し、
そこからテスト対象のCMPを呼び出すという方法が浮かびます。
ただこの方法だと、テスト用のSessionBeanとそのクライアントコードを
記述しなければならないので、他に良い方法がないかと思っています。

ちょっと調べてみたところ次のキーワードを見つけました。
(1)cactus
(2)net.sourceforge.junitejb.EJBTestCase

(1)cactusについてはまだ完全に理解していないのですが、
ちょっと面倒かなという印象を持ちました。

(2)EJBTestCaseについてはどのコンポーネントのクラスなのか
分かっていません。
ご存知の方いらっしゃいますか。

プロジェクトで採用されているEJBの単体テスト方法について
ご紹介いただければと思います。

[環境]
WindowsXP
JSDK1.4.2
Eclipse2.1.2
JBoss3.2.2

よろしくお願いします。
やまろう
常連さん
会議室デビュー日: 2003/10/13
投稿数: 35
お住まい・勤務地: 埼玉・東京
投稿日時: 2003-11-15 12:22
CMP EntityBeanって言ってるのはLocalインターフェースのってこと
なんでしょうかね?だからテストがしずらいと。

JUnitのシリーズでservletuiってのがあってWebの画面にテストケースクラス名を
入力してボタンを押すと、そのテストケースクラスがサーブレットから呼ばれる
のでサーブレットコンテナ上で実行されるから、LocalインターフェースのEJBも
テスト出来ると思いますよ。試してないのでなんとも言えませんが。
乳牛
常連さん
会議室デビュー日: 2003/04/15
投稿数: 22
投稿日時: 2003-11-17 12:51
JUnitEEってのもあります。
いずれにせよEJBのUnitテストってEJBコンテナが動いていないと出来ないので普通のクラスのテストに比べてちょっと面倒です。ローカルインタフェースをテストしようとするとTestCaseとEJBが同じアプリケーションサーバで動く必要があり、どのUnitテストツールもサーブレットでTestCaseを動かす戦略をとってるみたいですね。

と言いつつうちもまだあまり自動テスト化が出来ていません(^^;
1

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