How CAT works?
You say CAT will test my data. OK, but how does it work?
On this page
Project file
First, CAT needs to know where is the data you want to test, what tests you want to run and what is your desired output. Therefore, CAT needs some configuration. In CAT, you organize these in project files. They are in YAML format and are designed to be very simple.
The project files may contain definitions of data sources and tests directly, or they may instruct CAT to load the definitions from elsewhere (such as from MS Excel worksheet, from database etc.). Details are not important at this moment. Important is: there is a simple file that instructs CAT what tests you want to run. It is called CAT project file.
Executing tests
Different people have different preferences. Therefore we provide four simple tools that are able to work with project files:
Typically CAT users only use one of the tools. The tool of your choice (they are described and compared in more detail in the next article) will do this for you:
- open / display the project content
- such as data sources, tests, outputs needed, settings
- run the tests
- connects to data sources and evaluates your data, based on the test definitions from project file
- create the desired output
- such as results of the tests in MS Excel format, JSON file or entries in a relational database table
Here is a simple schema (for PowerShell module, but all tools work the same way):
The CAT client of your choice (PowerShell module, CAT CLI, CAT Studio, CAT Python module) reads the CAT project file. Based on instructions in it, it runs tests against data. The test results are stored, based on instructions in the project file, either in files or in a database, or in both.
The generated outputs can then be consumed by people (MS Excel), CI/CD tools like Azure DevOps (JUnit, TRX), other processes (JSON, YAML) or can be used for reporting (tables in relational databases).
The tools do NOT require admin permissions to be installed. They are installed to user’s profile.
Please also note PowerShell module, CAT CLI and Python module are very light-weight (~ 40 MB). It takes seconds to download them and install them.