Available for PostgreSQL, Team edition

Integration testing for QA

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 DATABASE_URL or the PG* variables.
  2. Provide a Team licence: a unitautogen.lic file in the folder you run from, or --license PATH.
  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.