# Running Tests ## Backend To run backend tests, start and attach to the backend container as described in [running-the-dev-environment.md](running-the-dev-environment.md). Once inside the container, execute `make test` or `make test-parallel` to run the tests. The tests use the `config.settings.tests` configuration, which sets base variables and ignores environment variables in the `.env` file. The `.env` file is intended for production or development mode. ### Customize Test Settings You can customize test settings by creating a `.env.testing` file in the backend directory. For example: ```env # backend/.env.testing BASEROW_MAX_FIELD_LIMIT=1 ``` ### Running Tests Outside the Backend Container To run tests outside the backend container, follow these steps: 1. Create a Python virtual environment. See [supported](../installation/supported.md) to determine the supported version of Python. 2. From the backend directory, install the required packages with `pip install requirements/base.txt` and `pip install requirements/dev.txt`. 3. Set environment variables to connect to the database. Create a `.env.testing-local` file in the backend directory. At a minimum, set `DATABASE_HOST` to `localhost` since the default value of `db` is only valid inside the docker network. ```env # backend/.env.testing-local DATABASE_HOST=localhost ``` 4. Export the `TEST_ENV_FILE` variable to specify the environment file: ```sh export TEST_ENV_FILE='.env.testing-local' ``` 5. Run `make test` or `make test-parallel` from your shell outside the containers in the backend directory.