Document toolboxDocument toolbox

Automated Unit Testing

Introduction

MettleCI enables you to rapidly (in most cases, automatically) create re-usable Unit Tests for your DataStage Jobs, feed them with data and run them. The focus of MettleCI Unit Testing is create and publish, to Git, a set of artefacts (test specifications and associated test data) that embody a definition of (used to demonstrate) your job's correct functional behaviour.  These artefacts can be propagated to downstream environments where they can be used to verify your job's consistent behaviour on DataStage platforms which may not have the same configuration, connectivity, or even DataStage version as the project in which the original job was developed.  

The Unit being tested by MettleCI's Unit Test capability is an individual DataStage job.  Unit testing is not intended to replace performance testing, nor does it support connecting to source or target databases to validate SQL queries.  Broader-scoped testing activities (typically involving database interaction) is the role of MettleCI's End-to-End tests which are created, managed, and executed separately to Unit Tests. 

Sections

Test Data

Test data can be derived using a number of methods, each of which may be used in combination with one another:

  1. Entered manually into the Excel-like test data file tables in MettleCI Workbench

  2. Provided as CSV file which are imported into the relevant test data file using MettleCI Workbench

  3. Fabricated using MettleCI Workbench's Data Fabrication capabilities (illustrated in the diagram above)

  4. Captured from your existing unit test data sources using MettleCI's Data Interception capabilities (see below)

To create Unit Tests for your jobs you'll need to Install the MettleCI Workbench.

To intercept test data and run Unit Tests you'll need to Install the Unit Testing Harness.


© 2015-2024 Data Migrators Pty Ltd.