Available for PostgreSQL, Team edition

The whole flow inside the database, tested on every build.

For QA teams that need the assembled database verified, not one routine at a time.

How to do it

Team edition. Same setup as unit testing, one command.

  1. Install pgTAP and plpgsql_check; connect with UNITAUTOGEN_DSN or the PG* variables.
  2. Provide a Team licence: --license PATH, the UAG_LICENSE variable, or a unitautogen.lic file.
  3. Run the integration command:
unitautogen integration --schema public --out integration_tests --html integration.html --json integration.json

What QA can't reach through the app

One entry point, the whole chain

Point it at a root function. It runs the callees and the triggers for real, with generated data.

checkout(order_id)              -- root: full test set generated
  |- reserve_stock(item, qty)   -- callee, run for real
  |- apply_pricing(order_id)    -- callee, run for real
  \- [trigger] audit_order      -- fires on write, not mocked

What lands in CI, every build

  • An Integration Testing Report with one row per root function
  • Click a root for its call map, in real call order
  • Per-test write footprint across every table the map touches
  • Uncovered lines explained, because the root's inputs never reached them
  • Non-zero exit code when an outcome moves, root and branch named
Integration Testing Report with one row per root function

How it fits a QA pipeline

What platforms suggest

Testing your database logic is what the platform tells you to do.