With multiple physical machines it is possible to perform multi user testing. I would like to know a better way to perform multi user testing? Also various tools available for simulating the multiple machines (This is for browser based application).
You are looking for a Load Testing tool. Something Like Mercury's LoadRunner. It can simulate as many clients as you need to validate the application's requirements usually. In answer to your first question, how many browsers can you open on one machine? Each time one is opened the tester can sign in as a different person. If that's not sufficient you can assign one tester per machine to do simultaneous transactions.