I'm trying to use tox to automate pytest testing of my project on Python 3.7 and 3.8 but am struggling with how to best set this up. What's the easiest way to get multiple Python versions installed on my Windows 10 machine in order to use them with tox?
If I just manually install them using the official installers how do I set up my environment variables? Because each installation contains python.exe, so if I install two versions and add both their paths C:\Program Files\Python37\ and C:\Program Files\Python38\ to my Path environment variable this won't differentiate them... python will just refer to the first one listed. So do I need to go and manually rename the python.exe files to names like python37.exe and python38.exe? This all seems very manual and clunky but I can't find any easier way or tutorial about this step.
The tox documentation just gives a solution using conda, but I'm not using conda and don't want to switch to it just to use tox.
If Python version paths and aliases are set up manually, then if someone clones my project to work on a PR and wants to run tests locally, tox would not work correctly if their Python install locations are different or they're on a different OS. Is there some standard way to define and set this all up so things are easy and consistent across machines?
If all this is unavoidable, what is an alternative to tox for consistently testing projects across multiple Python versions that can work on any machine or CI/CD pipeline?
C:\Program Files\Python37\pythondirectly. Each Python knows the path to its own libraries.py -3.7 -mtoxor whatever (assumestoxinstalls as runnable module)?