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:
- Install the Supabase CLI on your local machine
Creating a test#
Create a tests folder inside the supabase folder:
mkdir -p ./supabase/tests/database
Create a new file with the .sql
extension which will contain the test.
touch ./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:
1begin;
2select plan(1); -- only one statement to run
3
4SELECT has_column(
5 'auth',
6 'users',
7 'id',
8 'id should exist'
9);
10
11select * from finish();
12rollback;
Running tests#
To run the test, you can use:
supabase test db
This will produce the following output:
$ supabase test db supabase/tests/database/hello_world.test.sql .. ok All tests successful. Files=1, Tests=1, 1 wallclock secs ( 0.01 usr 0.00 sys + 0.04 cusr 0.02 csys = 0.07 CPU) Result: PASS
More resource#
- pgTAP extension
- Official pgTAP documentation