---
title: "CAT Tools"
description: "The four CAT tools and what each of them is good for"
url: "https://docs.justcat.it/reference/basics/cat-tools/"
---
# CAT Tools


All four tools work with the same project files and run your tests the same way. They differ only in *how you talk to them*. Typically you pick one and stay with it.

## CAT Studio

CAT Studio is a graphical user interface (GUI) for CAT. It allows you to work with CAT with no knowledge of command-line tools.

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 and junior developers/testers** to author, run and evaluate automated tests against data.

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

![CAT Studio](cat-studio-tests.png)

## CAT CLI

CAT CLI is a command-line interface for CAT, with no dependencies on PowerShell. You can run it from the Windows command line, from PowerShell, and from any shell on Linux and macOS.

Main advantages:

No dependencies
: CAT CLI is a self-contained 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 DataTools.CATCLI`). On other Windows systems, you need to use installer (simple next, next, next...). On macOS and Linux it is `brew install justcatit/cat/catcli`, or an archive to unpack.

Some disadvantages:

* not as powerful 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](cat-cli-results.png)
*Test results in CAT CLI*

Supported platforms: MS Windows, Linux (x64 and arm64) and macOS (Apple silicon and Intel, preview)

## 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

![CAT PowerShell module](cat-powershell-module.png)
*CAT PowerShell module*

## CAT Python module

We provide a *justcatit* package. It contains one module, named *cat*.

<a href="https://pypi.org/project/justcatit/" target="_blank">https://pypi.org/project/justcatit/</a>

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 learn or use PowerShell at all).

The module allows you to interact with CAT directly from your 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](cat-python.png)
*Use CAT seamlessly from your Python code*

