We've got a client app which connects using TCP to a server. Additionally, the client app makes use of .NET remoting to talk to another piece of locally running code.
I'm tasked with creating a "Client Simulator" to do some testing, where we'd need to have 100's of clients connected simultaneously t开发者_StackOverflow社区o the server. Ideally, this would work out great if I were to run each client in it's own space, such as a VM, but this is not logistically feasible.
Any suggestions on how to handle this? Is there a tool that could do something like this? Or some sort-of .NET concept I could use?
Thanks in advance.
What about stress testing? http://support.microsoft.com/kb/231282
You can do it with Test Edition of Visual Studio: http://msdn.microsoft.com/en-us/vstudio/dd408381.aspx
There is load runner but we found it to be a very expensive piece of shelf ware. We created a server controlled client spawner that could once installed on a machine listen to broadcast message and perform actions on the server. We simulated 3000 + clients very eisly on 10 machines since the clients didn't have to do any processing.
In an old project i worked on, I implemented a set of NUnit tests that executed cookie-less web requestes on a locally running Cassini server. Each request generated a unique sessions and the session persistence was handled by the unit tests using the session id returned by asp-net on the first response. The check on the output was handled via regular expressions that verified the presence of well-knowns contents parts. That was enough for my needs, but maybe you need something more exaustive.
精彩评论