In order to save money, it is possible to run one or more of your non-production environments as virtual environments. This is much cheaper, but it tends to run slower than a physical environment. It is possible to run functional tests in a virtual environment, but not load tests.
If load testing is not required in a particular environment, AgilePoint recommends using a virtual environment. This is an especially effective strategy for development environments.
Note that even if you use a virtual environment, physical database servers are recommended.