User acceptance tests running in parallel

This post is a question to the community, how are you doing user acceptance testing?

The reason I ask this question is because we recently felt the need to start running our UATs (User Acceptance Tests) in parallel in different suites but on the same environment.

At the time the tests were relying on existing data and didn't have much of a setup, so we have been getting by okay. But as we all know, non-isolated tests are a recipe for disaster because if your data ever changes, you will have to change your code.

So... we started writing more setups for our tests, but the more setups we write, the more side effects each test has, which means that if you run on them in parallel on the same environment, you will have collisions.

The obvious answer seems to be to assign each test suite it's own environment, but then we feel we are not testing our load balancing my question to you is, does the community have any solutions to this problem?