views:

87

answers:

2

Hi,
At first -I need to do it as my university project so I am not interested in using existing tools. I would like to know whether it is even possible to write a very simple tool that I could use for performance testing of web applications. It would only record actions (I do not know, maybe just packet sniffering?) and then replay. However I have basic idea (record packets on port 80 and sending them again), I do not know how to measure time for each transaction as they are not differentiated. Any help is greatly appreciated, thank you!

A: 

Take a look at Fiddler - a local small debugging Webproxy.

You can record WebRequests, and reissue them, and measure the performance of your webserver. It is also possible to save them to disk, load them - and reissue them again...

http://www.fiddler2.com/fiddler2/

[edit] Look at the video of the presentation at mix10 here: http://live.visitmix.com/MIX10/Sessions/FT50

spookycoder
Thanks! Is there any way how to record WebRequests except for low level packet sniffering?
Tomas
I think, especially with ASP.NET you could also go with either HTTP-Modules or HTPP-Handlers.Especially for performance Measurements you could go for an HTTP-Module.The drawback is, that it is not really transparent (as an external proxy or packet sniffer) - you have at least to touch the configuration of the webapplication to activate your module or handler.
spookycoder
A: 

Edited (as the tool should be written from the ground up):

Use JMeter (http://jakarta.apache.org/jmeter/) as a benchmark and build a proxy to intercept all HTTP requests.

See http://stackoverflow.com/questions/226784/how-to-create-a-simple-proxy-in-c for this topic in C#.

bertelmonster2k
BTW - we use ASP.NET/C# on the server - but still jmeter was the best tool doing the job (for free).
bertelmonster2k
Sorry but I am askin how to do that (stated in the first sentence of my post :), I am familiar with LoadRunner but still..need to write my own as a university project
Tomas
Well, JMeter shows you how to do it: Use a proxy server to intercept requests. See http://stackoverflow.com/questions/226784/how-to-create-a-simple-proxy-in-c shows how to write a proxy in C#.
bertelmonster2k