How can run django tests in Pycharm Pro, getting ImproperlyConfigured and AppRegistryNotReady errors
Try to open the Run/Debug Configuration window (you should find it in the top toolbar, clicking the dropdown menu near the play / debug button and Edit Configuration)
From here, you should see a list with the existing saved configurations where the last element should be Templates. Search Django tests under Templates. In the environment part, add DJANGO_SETTINGS_MODULE=mysite.settings to the environment variables. The next time you'll run a test that is not existing in your run/debug configurations, the template with the setting module set will be used.
If I were you, I will delete all the existing test configurations. Also, I suspect from your point 3, that you have probably a python test configured instead of a Django test (this is why you had the error django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet because Django was not loaded). If you have it, delete it too. Apply the configurations and retry to run the test.
When you run the test, ensure that a Django test is run, not a python one (you should see the Django logo near the test name in the run section and in the dropdown in the toolbar)
I am having issues running django tests in PyCharm Pro.

I am able to run python manage.py runserver just fine.
I am able to migrate, makemigrations, manage.py test just fine. Actually, everything with manage.py runs as expected.

Whenever I run tests in PyCharm (by clicking the green run button), I get this error:
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
I have done several things to fix this:

I have, in my test file, put this:
import os
 os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' (with mysite being the correct dir I promise)
I have a settings file and a wsgi file, and my wsgi file does set the DJANGO_SETTINGS_MODULE:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
application = get_wsgi_application()
The only thing that has taken me out of this error was by setting up the configuration for that test class by going to Edit Configuations -> Environment -> Environment Variables and adding the DJANGO_SETTINGS_MODULE there. This only gets me a different error:
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
Plus, I have to do this for every test class and I can't run individual tests in the class, but must rather run the entire test suite in that class. Not a good solution...
I have manually (in the virtualenv) run export DJANGO_SETTINGS_MODULE=mysite.settings. This has not changed anything. 

So, I am out of ideas and have followed all the advice I could find on SO. Is there something else I have to do in Pycharm? Again, the cmdline works fine, but I'd really rather not run tests this way - plus, I can't debug. 
Edit: It may be worth noting that I am running the unit tests while my server is  running (this should not make a difference), and I am also have the python interpreter pointed to the one in my virtualenv.