utplsql mit gradle

In diesem Artikel stelle ich vor, wie utplsql mit dem Build-Automatisierungstool gradle integriert wird. Dazu verwende ich das utplsql-Plugin für gradle.

Die Aufgabe ist, die Tests für die Funktion btwnstr aus der utplsql-Dokumentation im Package ut_btwnstr über das Plugin in gradle auszuführen und die Testergebnisse darzustellen.

Vorgehen wie folgt:

Neuen Ordner anlegen

mkdir utplsql01
cd utplsql01

Gradle projekt initialisieren

gradle init

Die build.gradle-Datei wie folgt anpassen

buildscript {
  repositories {
    maven {
  url 'http://dl.bintray.com/iwarapter/gradle-plugins/' 
    }
  }
  dependencies {
    classpath 'com.iadams:gradle-utplsql-plugin:0.1.3'
    }
  }

apply plugin: 'com.iadams.utplsql'

repositories {
  mavenCentral()
}
dependencies {
  junitreport 'org.apache.ant:ant-unit:1.9.4'
}

task loadDriver {
  URLClassLoader loader = GroovyObject.class.classLoader
  loader.addURL (file ('lib/ojdbc6.jar').toURL())
  java.sql.DriverManager.registerDriver(loader.loadClass ('oracle.jdbc.OracleDriver').newInstance())
}
utDeploy.dependsOn loadDriver
utRun.dependsOn loadDriver

utplsql {
  url = 'jdbc:oracle:thin:@entw01:1521/orcl'
  username = 'hr'
  password = 'oracle'
  sourceDir = 'src/tests'
  includes = '**/*.pks, **/*.pkb'
  excludes = ''
  outputDir = 'build/utplsql'
  testMethod = 'run'
  setupMethod = true
  failOnNoTests = true
}

Nun einen src/tests Ordner anlegen

mkdir -p src/tests
cd src/tests

und darin die Source des Test-Packages ut_btnwstr kopieren.

Nun muss man noch einen lib-Order anlegen, in den der jdbc-Treiber kopiert werden muss.

mkdir lib
cd lib
cp /oracle-lib-folder/ojdbc6.jar .

Nun kann man mit

gradle utDeploy utRun

die Tests einspielen und ausführen.

Im nächsten Post zeige ich, wie ich dies für Continuous Integrations optimiere und erweitere indem flywaydb integriert wird.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.