[Seasar-user:19187] S2Junit4 テスト事前データがロールバックされない

Nakai Shigeki [E-MAIL ADDRESS DELETED]
2010年 1月 25日 (月) 11:25:01 JST


はじめまして。中井と申します。

現在、SAStruts、S2JDBCを使用しておりますが、S2Junit4でのテストケースで問題が発生しております。
なにか情報がありましたらご教授ください。

■現象
Serviceクラスのテストケースで、テスト完了時、事前データがコミットされた状態で残ってしまう。
該当するテストケースメソッドには@TxBehaviorアノテーションは指定しておりません。
また、再現性の確認の為下記環境化でDoltengから新規にプロジェクトを生成しなおして
S2JDBC-genのgen-entityでEntityとServiceクラスを生成した直後に行っております。
(s2jdbc-gen-build.xmlのuses2junit4プロパティはyesに変更)

■開発環境のバージョン
JDK 6.0
Tomcat 6.2.20
S2Container 2.4.40
SAStruts 1.0.4sp7
Dolteng 0.39.0

■テスト時のログ
DEBUG 2010-01-25 09:48:53,873 [main] 環境変数#Envにファイル(env_ut.txt)から値(ut)が設定されました
DEBUG 2010-01-25 09:48:53,873 [main] S2Containerを作成します。path=warmdeploy.dicon
DEBUG 2010-01-25 09:48:53,873 [main] S2Containerを作成します。path=convention.dicon
DEBUG 2010-01-25 09:48:53,888 [main] S2Containerを作成しました。path=convention.dicon
DEBUG 2010-01-25 09:48:53,888 [main] S2Containerを作成します。path=customizer.dicon
DEBUG 2010-01-25 09:48:53,888 [main]
S2Containerを作成します。path=default-customizer.dicon
DEBUG 2010-01-25 09:48:53,888 [main] S2Containerを作成します。path=std-customizer.dicon
DEBUG 2010-01-25 09:48:53,904 [main]
S2Containerを作成します。path=std-customizer-tiger.dicon
DEBUG 2010-01-25 09:48:53,904 [main]
S2Containerを作成しました。path=std-customizer-tiger.dicon
DEBUG 2010-01-25 09:48:53,951 [main]
S2Containerを作成しました。path=std-customizer.dicon
DEBUG 2010-01-25 09:48:53,951 [main]
S2Containerを作成しました。path=default-customizer.dicon
DEBUG 2010-01-25 09:48:53,951 [main] S2Containerを作成しました。path=customizer.dicon
DEBUG 2010-01-25 09:48:53,951 [main] S2Containerを作成します。path=creator.dicon
DEBUG 2010-01-25 09:48:53,966 [main] S2Containerを作成しました。path=creator.dicon
DEBUG 2010-01-25 09:48:53,966 [main] S2Containerを作成しました。path=warmdeploy.dicon
DEBUG 2010-01-25 09:48:53,966 [main] S2Containerを作成します。path=s2junit4.dicon
DEBUG 2010-01-25 09:48:53,982 [main] S2Containerを作成しました。path=s2junit4.dicon
DEBUG 2010-01-25 09:48:53,982 [main] 設定ファイル(app.dicon)をインクルードします
DEBUG 2010-01-25 09:48:53,982 [main] S2Containerを作成します。path=app.dicon
DEBUG 2010-01-25 09:48:53,982 [main] S2Containerを作成します。path=convention.dicon
DEBUG 2010-01-25 09:48:53,998 [main] S2Containerを作成しました。path=convention.dicon
DEBUG 2010-01-25 09:48:53,998 [main] S2Containerを作成します。path=aop.dicon
DEBUG 2010-01-25 09:48:53,998 [main] S2Containerを作成しました。path=aop.dicon
DEBUG 2010-01-25 09:48:53,998 [main] S2Containerを作成します。path=j2ee.dicon
DEBUG 2010-01-25 09:48:53,998 [main] S2Containerを作成します。path=jta.dicon
DEBUG 2010-01-25 09:48:54,013 [main] S2Containerを作成しました。path=jta.dicon
DEBUG 2010-01-25 09:48:54,013 [main] S2Containerを作成します。path=jdbc.dicon
DEBUG 2010-01-25 09:48:54,013 [main] S2Containerを作成しました。path=jdbc.dicon
DEBUG 2010-01-25 09:48:54,013 [main] S2Containerを作成しました。path=j2ee.dicon
DEBUG 2010-01-25 09:48:54,013 [main] S2Containerを作成します。path=s2jdbc.dicon
DEBUG 2010-01-25 09:48:54,029 [main]
S2Containerを作成します。path=s2jdbc-internal.dicon
DEBUG 2010-01-25 09:48:54,029 [main]
S2Containerを作成しました。path=s2jdbc-internal.dicon
DEBUG 2010-01-25 09:48:54,029 [main] S2Containerを作成しました。path=s2jdbc.dicon
DEBUG 2010-01-25 09:48:54,029 [main] S2Containerを作成しました。path=app.dicon
DEBUG 2010-01-25 09:48:54,060 [main]
クラス(jp.samples.service.UserService[userService])のコンポーネント定義を登録します
DEBUG 2010-01-25 09:48:54,075 [main]
トランザクションを開始しました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,091 [main]
Excelファイル(jp/samples/service/UserServiceTest_findById.xls)の値をデータベースに追加します
DEBUG 2010-01-25 09:48:54,480 [main] 物理的なコネクションを取得しました
DEBUG 2010-01-25 09:48:54,480 [main]
論理的なコネクションを取得しました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,496 [main]
論理的なコネクションを閉じました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,496 [main]
論理的なコネクションを取得しました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,496 [main] INSERT INTO user (ID, NAME,
PASSWORD, ROLE, YAKUSHOKU) VALUES ('junit', 'junit', 'junit', 'admin',
'junit')
DEBUG 2010-01-25 09:48:54,512 [main]
論理的なコネクションを閉じました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,512 [main] BEGIN
jp.samples.service.UserService#findById(junit)
DEBUG 2010-01-25 09:48:54,558 [main] select T1_.ID as C1_, T1_.NAME as
C2_, T1_.PASSWORD as C3_, T1_.ROLE as C4_, T1_.YAKUSHOKU as C5_ from
USER T1_ where T1_.ID = 'junit'
DEBUG 2010-01-25 09:48:54,558 [main]
論理的なコネクションを取得しました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,558 [main] END
jp.samples.service.UserService#findById(junit) :
[E-MAIL ADDRESS DELETED]
DEBUG 2010-01-25 09:48:54,558 [main]
Excelファイル(jp/samples/service/UserServiceTest_findById_Expected.xls)を期待値として読み込みます
DEBUG 2010-01-25 09:48:54,574 [main]
トランザクションをロールバックしました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,574 [main]
論理的なコネクションを閉じました。tx=[FormatId=4360, GlobalId=1264380533857/1,
BranchId=]
DEBUG 2010-01-25 09:48:54,574 [main] 物理的なコネクションを閉じました
DEBUG 2010-01-25 09:48:54,589 [main] 環境変数#Envにファイル(env.txt)から値(ct)が設定されました



以上、よろしくお願いします。
中井 茂樹(Shigeki Nakai)
[E-MAIL ADDRESS DELETED]


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