読者です 読者をやめる 読者になる 読者になる

Challenge Java EE !

Java EEを中心に趣味や仕事における開発メモを書いています。

Arquillian Persistence Extensionを触ってみる

Arquillian

昨日のエントリで、Arquillianを利用してDBUnitのようにdatasetのxmlを定義したり、Unitilsの@DataSetアノテーションでデータを読むみたいなことが簡単にできれば…なんて書いていたのですが、Arquillian Persistence Extensionというものがあって、まさにそのようなものみたいです(^^;すごいなぁ。

試してみた所、簡単なサンプルは無事に動きました。詳細な手順は別途まとめるとして、こんな感じのことができました、というメモ。

テスト用DBデータの準備

DB使ったテストするためにレコードデータをxmlファイルに定義します。
以下ではサンプルとしてIDと名前だけある名簿テーブルを定義してます。

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
    <mymeibo id = "0001" name = "horikita" />
    <mymeibo id = "0002" name = "makimaki" />
</dataset>

テストコード

以下みたいなのを書いただけです。
idが0002のEntity取得したらmakimakiが入ってる?、レコードは2行取れた?という確認だけ。

@Test
@UsingDataSet("dataset.xml")
public void tryDataSetTest(){
    MyMeibo myMeibo = meibo.find(0002);
    assertThat(myMeibo.getName(), is("makimaki"));
    assertThat(meibo.count(), is(2));
}

実行結果

f:id:kikutaro777:20130106233117j:plain

何か設定したわけでもないけど、終わった後にレコードも削除されてるし*1
面白そう、というか、リアルにこれを使ってみようかと思い始めたので暫く触っていきたいと思います。

*1:なので、元々データが入っているテーブルでテストする際は注意が必要です!!

にほんブログ村 IT技術ブログへ
にほんブログ村
にほんブログ村 IT技術ブログ Javaへ
にほんブログ村