Community Edition, free

Generated tests, honest coverage.

The default command. A full pgTAP suite for every function and trigger, run for you, measured.

Standard pgTAP. Commit it, run with runtests() or pg_prove.
Function drill-down: per-test results and the annotated source with covered and uncovered lines
A function drill-down showing each generated test and the annotated source of what ran.

Every uncovered line is explained

Coverage is measured by running the tests. Each uncovered line is tagged with whose problem it is.

Dead code (D)

Can never run. Contradictory conditions named. Usually a real bug.

Error-recovery (H)

Exception handler valid data cannot reach. Untested by default; opt in.

Tool limit (E)

No test could be produced for this line. Reported plainly.

Trigger drill-down: the effect of each firing and the trigger function source
A trigger drill-down showing the effect of each INSERT, UPDATE and DELETE, and the trigger function's source.

What platforms suggest

UnitAutogen uses exactly the tools PostgreSQL and Supabase point you to.