Answered by:
Is Client/Server load testing with an IIS backend possible with VS2010 web/load testing?

Question
-
Ihave a client/server environment that uses a .Net client application with an .Net IIS back end. I would like to record the client/server interaction for load testing but I can't seem to find out how it's done. So far, all I can find is about recording a web test with IE, Firefox, etc.
In other words, recording traffic between a browser and IIS is not exactly what I need... Can I record traffic between an application and IIS?
Thanks!
Rick Weber
Monday, May 3, 2010 4:49 PM
Answers
-
Recording the traffic between the browser and a web server would be a good fit for the web test recorder. Fiddler captures http traffic whether it is a rich client or web client. The reason I am suggesting the web test is Rick seems to want to perform load testing. Generating any serious load with a coded ui test is going to be difficult.
From the same post as above: "Coded UI Tests drive the mouse and keyboard. Therefore, only 1 virtual user can run coded UI tests per agent. The best way to control this is to set up a separate scenario in the load test, and set the user load to 1 user. "
Generating any serious load on the server is going to be really difficult. Imagine trying to generate a 100 person load. As I read the documentation that would take - 100 agent machines/virtual machines. I just think the better approach is to capture the http traffic and use that to generate the load. I certainly agree that the coded UI test is a more robust test in terms of testing the client but using a coded UI test as the sole means of generating load on a server is going to be tough.
Tim- Marked as answer by Edwer FangModerator Tuesday, May 11, 2010 3:26 AM
Friday, May 7, 2010 3:04 AM
All replies
-
If you use fiddler you can record all http traffic which I suspect will cover your scenario.
Download and install fiddler (www.fiddlertool.com)
Run fiddler and tell it to begin capturingLaunch your app
navigate / interact with the application
Stop capturing traffic in fiddler
highlight the requests you are interested in, Right click -> save -> Session(s)-> as Visual Studio Web Test
(http://blogs.msdn.com/vstsqualitytools/archive/2006/12/21/testing-web-applications-with-pop-ups.aspx)
another link (look for the using fiddler section)
http://blogs.msdn.com/edglas/archive/2007/12/02/web-test-authoring-and-debugging-techniques-for-vs-2008.aspx
TimMonday, May 3, 2010 6:29 PM -
Fiddler and neXpert are always good for people to use.
RayTuesday, May 4, 2010 1:37 AM -
Hello,
Fiddler is the alternative choice for your scenario.
Edwer Fang [MSFT]
MSDN Subscriber Support in Forum
If you have any feedback on our support, please contact msdnmg @ microsoft.com
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Send us any feedback you have about the help from MSFT at fbmsdn@microsoft.com.Tuesday, May 4, 2010 7:47 AMModerator -
Rick,
Are you asking about capturing traffic from a Webform or Winform? The webtest and most of the tools sugested are designed for use on a web front end. If you are using this on a client / server application you should look at the new WebTest++ in VSTS2010. Very cool.
Gary
- Proposed as answer by HeavyGman Wednesday, May 5, 2010 9:50 PM
Tuesday, May 4, 2010 9:35 PM -
Thanks Gary,
I do indeed have a client app (winform) that uses an IIS back end. WebTest++ in VSTS2010 could be what I'm looking for, I'll look into that.
Thanks,
Rick
Tuesday, May 4, 2010 9:50 PM -
If you are interested in doing some UI testing, yes, the new UI testing capabilities in VS 2010 are great. If you are interested in load testing I still think using fiddler and converting the traffic to a web performance test is the better option. Generating a large load can be a big challenge and you want your client resources dedicated to generating as much load as possible. Using the client (agent) machines to generate the traffic using a web test is much more efficient than loading a rich client and manipulating it to generate the traffic.
TimThursday, May 6, 2010 3:07 AM -
I see in Gary's post he still may be recommending using a web test in 2010 though I'm not sure what he means by webtest++.
Here is a blog comparing load test features in 2008 and 2010. http://blogs.msdn.com/edglas/archive/2010/03/03/product-transitions-from-vs-2008-to-vs-2010-for-load-testing.aspx
There is a substantial change in licensing between the 2 versions so that is also something to consider
TimThursday, May 6, 2010 11:14 AM -
My error here Tim, I meant the CodedUI test in 2010. Too many pre-release names in my head I guess ;-)
Yes th the licensing changes were significant. My biggest gripe is that as partners we didn't get upgraded to Ultimate as every other volume subscriber did so we need to pay extra for the full suite of test tools.
Thanks,
Gary
Thursday, May 6, 2010 2:41 PM -
I thought that was the case when I first read your response, then I reread it and wasn't sure.
Here is an msdn article on using codedui tests in a load test.
http://msdn.microsoft.com/en-us/library/ff468125.aspx
specifically
"The inclusion of coded UI tests should only be done under specific circumstances. All the scenarios that use coded UI tests in load tests involve using the coded UI tests as performance tests. This can be useful because coded UI tests let you capture performance at the UI layer. For example, if you have an application that takes 1 second to return data to the client but 8 seconds to render the data in the browser, you can not capture this type of performance problem by using a Web performance test."
When I think of load test and coded ui test, I think that you still use the recorder or fiddler to capture http traffic (to generate the web tests) to use in your load test. Now while the load test is running you could fire off a single coded ui test and see how server performance at a given load really effects the user experience.
TimThursday, May 6, 2010 4:36 PM -
Hi Tim,
I'm sugesting CodedUI for this specific reason, as stated by the OP: "recording traffic between a browser and IIS is not exactly what I need"
This being the case, and the fact he's using Winforms, how can Fiddler help with this ?
Thanks,
Gary
Friday, May 7, 2010 1:20 AM -
Recording the traffic between the browser and a web server would be a good fit for the web test recorder. Fiddler captures http traffic whether it is a rich client or web client. The reason I am suggesting the web test is Rick seems to want to perform load testing. Generating any serious load with a coded ui test is going to be difficult.
From the same post as above: "Coded UI Tests drive the mouse and keyboard. Therefore, only 1 virtual user can run coded UI tests per agent. The best way to control this is to set up a separate scenario in the load test, and set the user load to 1 user. "
Generating any serious load on the server is going to be really difficult. Imagine trying to generate a 100 person load. As I read the documentation that would take - 100 agent machines/virtual machines. I just think the better approach is to capture the http traffic and use that to generate the load. I certainly agree that the coded UI test is a more robust test in terms of testing the client but using a coded UI test as the sole means of generating load on a server is going to be tough.
Tim- Marked as answer by Edwer FangModerator Tuesday, May 11, 2010 3:26 AM
Friday, May 7, 2010 3:04 AM -
Hello Rick,
Is your issue resolved?
Edwer Fang [MSFT]
MSDN Subscriber Support in Forum
If you have any feedback on our support, please contact msdnmg @ microsoft.com
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Send us any feedback you have about the help from MSFT at fbmsdn@microsoft.com.Monday, May 10, 2010 9:21 AMModerator