testing performance of a website
We have made a .net开发者_如何学C C# applications and want to test the performance.
What are good tools to test performance ? Something to record the flow through the application and can play it later again something like a stress tool
And what are the best options to debug the application for performance ? So that we can see how long a class/method runs and how many times the method will be hit.
In PHP we use cachegrind and xdebug but what are the options for .net ?
Visual Studio has web and load testing capabilities. You may also take a look at JMeter which is free.
Commercial software like Visual Studio or LoadRunner. Very expensive.
A good and open source suite to perform a lot of test, including also performance, is the one based upon Selenium
In your case probably WCAT as it is MS and will give you shed load of Windows based metrics. WCAT
However Jmeter (Java FOSS) is top notch Jmeter
And Selenium while not strictly a stress testing tool has many other testing features. seleniumhq
As i say WCAT if you are MS based is probably the best but worth casting your eye over Jmeter. Selenium is a FireFox plugin and does other testing that might interest you.
For the server part you can use a .NET profiler - dotTrace as you suggest or the profiler linked in my profile can do it.
I would advise AGAINST LoadRunner if your website uses AJAX. LoadRunner does not use a browser to test your website; it is the browser. But it's support for JavaScript and modern JavaScript libraries has fallen behind recent developments. You will have to put a lot more effort into scripting LoadRunner for AJAX than you typically would for other test tools.
Yes the Selenium option is becoming popular: That is running Selenium WebDriver scripts in multiple headless browsers. Using a small VM image from Amazon you can run about 25 of these headless browsers. In addition you don't need to worry about 'correlation' or url rewriting that the HTTP drivers need to handle as that processing is handled for you automatically in the headless browser.
The other huge benefit of this approach is that you are re purposing your Functional testing assets for Performance testing.
精彩评论