unitautogen executable. A single self-contained binary, with no Python installation and no dependencies to manage. Put it on your PATH, or call it by full path.The two extensions are pgTAP (the framework the generated tests are written in) and plpgsql_check (the coverage meter). Both are required. UnitAutogen checks for them before it generates anything and stops with a clear message (exit code 3) if either is missing, naming the exact command to run, so you never get a half-finished run.
Both are standard PostgreSQL extensions, added in two steps. Install the extension on the database server once (a one-time DBA action), then enable it in each database you test.
sudo apt install postgresql-16-pgtap postgresql-16-plpgsql-check (swap 16 for your major version).sudo dnf install pgtap_16 plpgsql_check_16.lib and share/extension directories.CREATE EXTENSION step below. If a provider does not offer one, check its supported-extensions list or ask its support to enable it.Once per database, with a role allowed to create extensions:
CREATE EXTENSION IF NOT EXISTS pgtap;
CREATE EXTENSION IF NOT EXISTS plpgsql_check;
This is exactly the command UnitAutogen prints when it detects a missing extension. Extensions are per-database, so repeat this step for every database you point the tool at.
Plain functions need no special rights. A few advanced setups, around triggers, circular foreign keys, and role-dependent branches, need a superuser or replication-capable role. Without it, those specific branches are skipped honestly (reported NOT_TESTABLE) rather than faked. Licensing is by command: the default unit-test generation is free, integration needs a Team licence, and seccover and --pii need an Enterprise licence.