# Utility script to run tests faster By default tests will be run using the Postgres container defined at the `docker-compose` file on the root of the repo, so prior to using this script make sure to launch the dev containers. You can use a different DB backend by defining `SUPERSET__SQLALCHEMY_DATABASE_URI` env var. This script will not install any dependencies for you, so you must be on an already set virtualenv ## Use: To show all supported switches: ```$bash scripts/tests/run.sh --help ``` From the superset repo root directory: - Example run all tests: ```$bash scripts/tests/run.sh ``` - Example run a single test module: ```$bash scripts/tests/run.sh --module tests/charts/api_tests.py ``` - Example run a single test: ```$bash scripts/tests/run.sh --module tests/charts/api_tests.py::TestChartApi::test_get_charts ``` - Example run a single test, without any init procedures. Init procedures include: resetting test database, db upgrade, superset init, loading example data. If your tests are idempotent, after the first run, subsequent runs are really fast ```$bash scripts/tests/run.sh --module tests/charts/api_tests.py::TestChartApi::test_get_charts --no-init ``` - Example for not recreating the test DB (will still run all the tests init procedures) ```$bash scripts/tests/run.sh --module tests/charts/api_tests.py::TestChartApi::test_get_charts --no-reset-db ``` - Example for not running tests just initialize the test DB (drop/create, upgrade and load examples) ```$bash scripts/tests/run.sh --no-tests ``` - Example for just resetting the tests DB ```$bash scripts/tests/run.sh --reset-db --no-tests ```