ARTICLE

Performance Engineering Tools

Posted by Manikavelu Velayutham Articles | Articles C# April 20, 2011
In this article let’s discuss various tools that help to analyze performance issues in web applications.
Reader Level:

Why Tools
 

Consider an aspx page in which the single request takes 30 seconds to load the complete details. You need to find out where the most time is taken. It might be due to various factors like the number of database hits per request, aspx file size, time taken to render the page, network speed or hardware scalability. So how to track this information in the background; it's not possible to track it manually. Some tools need to be run in the background to monitor all the events that occur in a page request.
 
A few tools that I came across are listed below; we see just an overview of each tool in this article.
 
Fiddler
 

Fiddler is an open source tool provided by Microsoft that can be installed in any machine. It's generally used to track the web applications. It allows you to inspect all the HTTP and HTTPS traffic and displays the incoming and outgoing of data that's happening in a request.
 
A Screen shot of a fiddler trace is shown below.

tool1new.jpg
 
Microsoft fiddler will show you each and every server request, how much time it takes to load the images, JavaScript's, CSS files & etc. Through that you can easily track which one takes more time to load. In the above screen shot, you can see how many JavaScript calls were made and what's the time line for them. In that manner complete information can be captured using fiddler.
 
DynaTrace
 

This tool will also perform the same operation like Microsoft Fiddler does, but it displays the report in statistically. It will help you to easily analyze the data.
 
A screen shot of the DynaTrace tool is shown below.

tool2new.jpg
 
In a single request of an aspx page, there will be an involvement of many things like HTML, CSS, JavaScript, Images, XML, Audio, Video & others. Here the report will show each event with one color, so that we can easily identify which one takes more time in that request. Simply we can say DynaTrace displays the reports in a User Friendly manner.
 
FX - COP
 
This tool is different from the above two tools. It's generally used for code review purpose. Here we need to select the dll to be reviewed. It has some inbuilt rules that will impact on performance, and we can also write our own custom rules based on our scenario. When a particular rule fails in the code, it will display the line to be changed.
 
A Screenshot of the FX-Cop report is also given below.

tool3new.jpg
 
In the above screen shot you can see the rules in the left hand side tab, where you can select or deselect the rules based on your requirement. In the right hand side tab, it will show you the exact error in that particular dll. The bottom tab will display the exact code that should be changed to improve performance.
 
Developers as well as Testers should use the above tools to deliver a high performance web site.

COMMENT USING