Home

Testing Your Database

You can use the Supabase CLI to test your database. The minimum required version of the CLI is v1.11.4. To get started:

Creating a test#

Create a tests folder inside the supabase folder:

1mkdir -p ./supabase/tests/database

Create a new file with the .sql extension which will contain the test.

1touch ./supabase/tests/database/hello_world.test.sql

Writing tests#

All sql files use pgTAP as the test runner.

Let's write a simple test to check that our auth.users table has an ID column. Open hello_world.test.sql and add the following code:

begin;
select plan(1); -- only one statement to run

SELECT has_column(
    'auth',
    'users',
    'id',
    'id should exist'
);

select * from finish();
rollback;

Running tests#

To run the test, you can use:

1supabase test db

This will produce the following output:

1$ supabase test db
2supabase/tests/database/hello_world.test.sql .. ok
3All tests successful.
4Files=1, Tests=1,  1 wallclock secs ( 0.01 usr  0.00 sys +  0.04 cusr  0.02 csys =  0.07 CPU)
5Result: PASS

More resource#

Need some help?

Not to worry, our specialist engineers are here to help. Submit a support ticket through the Dashboard.