2016-06-16 7 views
1

私はSpringの@Asyncで注釈を付けたメソッドをユニット(統合)テストしようとしています。 テストでは、メモリ内のh2データベースにデータを設定し、非同期メソッドを実行します。非同期コードにテストデータが表示されない:O @Asyncを削除すると問題が解決されます。Spring @Async - 統合テストでデータが見つかりません

助けが必要ですか? :)

答えて

0

トランザクションは@Asyncの前と同じように伝播されません。

@Async and @Transactional: not working

あなたのテストでは、テスト@Transactionals内部のスプリングの自動ロールバックを削除、データをコミットし、それをテストのいずれかの側を削除することができます。

非同期メソッドが呼び出され、非同期動作をテストしなくても、テストでも直接呼び出しできるデフォルトアクセスメソッドを作成できます。

必要なものをサポートし、トランザクションを利用できるようにしたが、持っていない可能性があります。

関連する問題