Brownie
A Python-based development and testing framework for smart contracts
...Once installed, you will never have to activate a virtual environment prior to using Brownie. Brownie documentation is hosted at Read the Docs. Use tox to run the complete suite against the full set of build targets, or pytest to run tests against a specific version of Python. If you are using pytest you must include the -p no:pytest-brownie flag to prevent it from loading the Brownie plugin.