Introduction
MettleCI provides a comprehensive and sophisticated automated Unit Testing capability. 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.
Test data can be derived using a number of methods, each of which may be used in combination with one another:
- Entered manually into the Excel-like test data file tables in MettleCI Workbench
- Provided as CSV file which are imported into the relevant test data file using MettleCI Workbench
- Fabricated using MettleCI Workbench's Data Fabrication capabilities (illustrated in the diagram above)
- Captured from your existing unit test data sources using MettleCI's Data Interception capabilities (see below)
Before using MettleCI automated Unit Testing you'll need to Install the Unit Testing harness on Unix or Windows.