• Blog
  • Documentation
  • Courses
  • Changelog
  • AI Starters
  • UI Kit
  • FAQ
  • Supamode
    New
  • Pricing

Launch your next SaaS in record time with Makerkit, a React SaaS Boilerplate for Next.js and Supabase.

Makerkit is a product of Makerkit Pte Ltd (registered in the Republic of Singapore)Company Registration No: 202407149CFor support or inquiries, please contact us

About
  • FAQ
  • Contact
  • Verify your Discord
  • Consultation
  • Open Source
  • Become an Affiliate
Product
  • Documentation
  • Blog
  • Changelog
  • UI Blocks
  • Figma UI Kit
  • AI SaaS Starters
License
  • Activate License
  • Upgrade License
  • Invite Member
Legal
  • Terms of License
  • Global Configuration
    • Environment Variables
    • Feature Flags
  • Server Actions
    • Sending CSRF Token to Actions
    • Server Actions Error Handling
  • The Makerkit SDK
    • User SDK
    • Organization SDK
    • Organization Subscription SDK
    • Data Loader SDK
  • Architecture and Folder Structure
    • Structure your Application
    • Data Model
    • Running Tests
    • CI Tests
This documentation is for a legacy version of Next.js and Supabase. For the latest version, please visit the Next.js and Supabase V2 documentation

Running Cypress Tests with Supabase and Next.js

Learn how to run Cypress E2E tests for your Makerkit application

The Makerkit SaaS boilerplate comes with a set of predefined tests with the following goals:

  1. Verify that the boilerplate application works well
  2. Provide instructions for building your own tests

As your application grows, the tests will inevitably need to be updated and maintained. We hope that our tests will be simple to understand and to change when you will need them.

Running the Next.js development server

First, we have to run the following command to run Next.js with a testing environment (i.e. using .env.test):

text
npm run dev:test

This command will start a Next.js dev server at http://localhost:3000, so it's important to make sure you have no other Next.js server running at the same port.

Additionally, we have to start the Supabase local instance:

text
npm run supabase:start

Running Cypress in development mode

While you build your tests, it can be handy to use a windowed version of the Cypress testing suite, so that you can easily retry the tests without having to re-run the while tests suite.

To do that, run the following command:

text
npm run cypress

Running All Cypress tests

Whenever you want to run all your tests at once, you can use the following commands:

text
npm run cypress:headless

This will run all the tests and exit.

Running Cypress in CI mode

Whenever you want to run all your tests in a CI environment, you can use the following commands:

text
npm test

The command above will:

  1. Start the Supabase local instance
  2. Start the Next.js environment
  3. Run the tests in headless mode
  4. Exit and close all the processes

As you may have noticed, this is the command to run in your CI environment.

On this page
  1. Running the Next.js development server
    1. Running Cypress in development mode
      1. Running All Cypress tests
        1. Running Cypress in CI mode