JUnitで DataSource を使う

JavaでJUnitを使って、DataSourceを使用するクラスをテストしたい。

どうやら、[JUnit JNDI DataSource helper package][1] を使えば、DataSourceが使えるらしい。

1. [JUnit JNDI DataSource helper package][1] をダウンロードし、展開する。
2. jrunittesthelper.jar を WEB-INF/lib にコピーする。
3. jndi_unit_test_helper.properties を適当なフォルダ(ここでは WEB-INF)にコピーする
4. jndi_unit_test_helper.properties を編集する。

こんな感じで使える。

public static void main(String[] args) throws NamingException, IOException, SQLException {
JNDIUnitTestHelper.init(“WEB-INF/jndi_unit_test_helper.properties”);
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup(JNDIUnitTestHelper.getJndiName());
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(“select DEPTNO, DNAME from DEPT”);
while (rs.next()) {
System.out.println(rs.getInt(“DEPTNO”));
System.out.println(rs.getString(“DNAME”));
}
rs.close();
stmt.close();
}

参考

* [java/JNDIの偽装 – kensuke][2]

[1]: http://www.javaranch.com/codebarn.jsp
[2]: http://www.wikiroom.com/kensuke/?java%2FJNDI%A4%CE%B5%B6%C1%F5

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください