enterprise has an assortment of test cases and code quality checks to catch potential problems during development. To run them all in the version of Python you chose for your virtualenv:

$ make validate

To run just the unit tests:

$ make test

To run just the unit tests and check diff coverage

$ make diff_cover

To run just the code quality checks:

$ make quality

To run the unit tests under every supported Python version and the code quality checks:

$ make test-all

To generate and open an HTML report of how much of the code is covered by test cases:

$ make coverage

To run all tests under certain python and django versions:

$ tox -e py27-django10          # run all tests under python 2.7 and django 1.10

Finally, various options to run only subset of tests:

$ pytest tests/admin            # run all tests in tests/admin folder
$ pytest tests/test_api.py      # run all tests in tests/test_api file

# run all tests in TestEnterpriseCustomer test suite file
$ pytest tests/test_api.py::TestEnterpriseCustomer

# run only `test_ready_connects_user_post_save_handler` in `TestEnterpriseConfig` suite
$ pytest tests/test_apps.py::TestEnterpriseConfig::test_ready_connects_user_post_save_handler