Oluşturduğum entegrasyon JUnit testlerinde, testler öncesi verilerin bilgibankasına aktarılması gerekiyor. Aşağıda yer aldığı şekilde JUnit sınıfı bünyesinde HSQLDB serveri standalone modda çalıştırılabilir ve DBUnit ile veriler bilgibankasına eklenebilir.
// JDBC Driver public static final String DRIVERCLASS = "org.hsqldb.jdbcDriver"; // standalone mode public static final String CONNECTIONURL = "jdbc:hsqldb:hsql://localhost:9006/mydb"; public static final String USERNAME = "sa"; public static final String PASSWORD = ""; private void startHsqlDb() { if(!isHsqlDbStarted()) { Server hsqlServer = new Server(); hsqlServer.setAddress("localhost"); hsqlServer.setPort(9006); hsqlServer.setDatabasePath(0, "db/hsqldb-data/"); hsqlServer.setDatabaseName(0, "mydb"); hsqlServer.start(); } } private boolean isHsqlDbStarted() { boolean result = false; try { Class.forName(DRIVERCLASS); Connection con = DriverManager.getConnection(CONNECTIONURL, USERNAME, PASSWORD); con.close(); result = true; } catch (Exception e) { e.printStackTrace(); } return result; } private static void stopHsqlDb() { try { Class.forName(DRIVERCLASS); Connection con = DriverManager.getConnection(CONNECTIONURL, USERNAME, PASSWORD); Statement statement = con.createStatement(); statement.execute("SHUTDOWN"); statement.close(); con.close(); } catch (Exception e) { e.printStackTrace(); } }
Geri izleme: DBUnit JUnit Entegrasyonu - Kurumsal Java Yazılımı