CAT client tools

What tools can I use to view and run my tests?

CAT comes with 4 different tools for running tests defined in a CAT project file. Based on your background, you’ll likely prefer one of them:

It makes little sense to master all of them, just pick one as your primary tool for executing tests. This article will help you to choose.

CAT PowerShell module

PowerShell in general is cool for automation. If you already use PowerShell 7 or later, this is the recommended way to go. If not, we encourage you to give it a try.

Main advantages:

Ease of installation
Basically you just run Install-Module CAT and you are done.
Ease of use
Even if you are not experienced PowerShell user, you will be able to run the tests (simply run Invoke-CatProject in the directory where your project file is)
Further automation
CAT is a PowerShell module - you can use all the bells and whistles of PowerShell. All the results are objects - easily filter them, group them, sort them… Ideal if you need to automate further processes based on test results.

When you should NOT use PowerShell module:

  • if you struggle to issue basic commands in a command line (use CAT studio instead)

  • if you can’t or don’t want to use PowerShell 7 (use CAT CLI instead)

Supported platforms:

  • MS Windows
  • Linux: preview, with some limitations related to Microsoft technologies (documented)

CAT PowerShell module CAT PowerShell module

CAT CLI

CAT CLI is a command-line interface for CAT, with no dependencies on PowerShell. But you can run it both from regular MS Windows command line and from PowerShell.

Main advantages:

No dependencies
CAT CLI is a self-contained exe application, with no prerequisites.
Ease of use
Simple commands for exploring and running your tests (simply run catcli run in the directory where your project file is)
Ease of installation
On Windows 11 it is one command (winget install catcli). On other Windows systems, you need to use installer (simple next, next, next…)

Some disadvantages:

  • so far we do not provide executable for Linux (but we will if users will request it)
  • not that powerfull as PowerShell (but if you only want to run tests and create outputs, you don’t need any of that)
  • you need to download installer and install CAT CLI, if you don’t have WinGet (WinGet comes by default only with Windows 11)

CAT CLI test results Test results in CAT CLI

Supported platforms: MS Windows only (we’ll provide support for Linux when requested)

CAT Studio (preview)

CAT Studio is a graphical user interface (GUI) for CAT. It allows you to work with CAT with no knowledge of command-line tools. It is still in preview. So far it can display all tests, execute them and run ad-hoc queries against your data sources. In future, we’ll turn it into a full test authoring and debugging experience.

Main advantage is it does not require any technical skills. Therefore it is suitable for non-IT people - it is an enabler for business users to run automated tests against data.

CAT studio works only on MS Windows. It is available in Microsoft Store.

CAT Studio

CAT Python module (preview)

We provide a datasmartly_cat package. It contains one module, named cat. Because this is a preview feature, it is published so far only in TEST PyPI:

https://test.pypi.org/project/datasmartly-cat/

The goal of this CAT client tool is to support our users whose primary development or scripting environment is Python. You can use all CAT features without leaving your Python development environment. There is no dependency on other CAT client tools (you don’t need to lear or use PowerShell at all).

The module allows you to interact with CAT directly from you code, using functions like open_project, invoke_tests etc., and work with the results directly from Python, without a need to parse CAT outputs first.

Python code example, with CAT functions used Use CAT seamlessly from your Python code