ETLUnit Open Source Project

ETLUnit 3.9.6

 

Draft in Progress

This document is a draft and is under development.

 

What is ETLUnit?

ETLUnit is the operational software generated by the Bitbucket-hosted etlunit open-source project.  This project is generally written in Java, uses Maven as its lifecycle manager, and is broken up into modules.

The project encompasses two proprietary "languages:" one for the ETLUnit test "classes" that configure and describe what is being tested, and another for the command line interface (CLI) used by the person running the tests.

The ETLUnit project uses googlecode.jsonschema2pojo to compile json schemas into executable code.  When looking at the raw project code, the Java code generated from the JSON schemas is not visible until the project is packaged (mvn package).

Therefore the JSON schemas you see in the project source (files with the extension .jsonSchema) are actually used.  They are not window dressing.

 

ETLUnit modules - a Partial List

 etlunit-assertion

 

 

 etlunit-cli

 

 

 etlunit-core

The core module for ETLUnit.

Of interest:

  • org.bitbucket.bradleysmithllc.etlunit.feature.ResourceFeatureMetaInfo.java
    • Makes use of some of the highest level feature JSON Schemas.

 

 

 

 etlunit-database

 

 etlunit-database-schema-archetype

Code that is currently manifest in the Maven archetype, org.bitbucket.bradleysmithllc.etlunit:etlunit-database-schema-archetype.

This archetype will create a Maven project that would become a module of a schemas parent project.

 etlunit-execute

 

 etlunit-feature-archetype

This feature provides a Maven archetype.  The archetype is found in Maven Central.  If you issue the following command:

Archetype Command for Creating a Feature
mvn archetype:generate -DarchetypeGroupId=org.bitbucket.bradleysmithllc.etlunit -DarchetypeArtifactId=etlunit-feature-archetype

You can thereby create a skeleton project to add a feature to ETLUnit.

 

 etlunit-file

 

 etlunit-informatica

 

 etlunit-log-assertion