Microsoft Application Center Test

Often Web applications fail to meet their customers' needsand expectations. When a Web application generates errors, has poor responsetimes, or is unavailable, customers can easily become frustrated. If yourperformance test procedure or methodology is not well thought out and properlyplanned, the odds of a successful Web application launch are significantlyreduced. Microsoft has introduced Application Center Test (ACT) which shipsalong with Visual Studio .NET's Enterprise Developer and Architect editionswhich will help to stress test Web servers. It integrates with the VisualStudio .NET IDE.<o:p></o:p>

<o:p> </o:p>

Purpose of Application Center Test<o:p></o:p>

<o:p> </o:p>

Application Center Test (ACT) stress tests Web servers andanalyze performance and scalability problems of Web applications. <o:p></o:p>

<o:p> </o:p>

ACT simulates a large group of users by opening multipleconnections to the server and rapidly sending HTTP requests. It also supportsseveral other authentication schemes and the SSL protocol, making it ideal fortesting personalized and secure sites.<o:p></o:p>

<o:p> </o:p>

Application Center Test is compatible with all Web serversand Web applications that adhere to the HTTP protocol. ACT 's uses VBScript orJava Script macro recording feature and built-in graphing capability to recordthe tests and provide more clarity to the tester about the performance of theweb site.<o:p></o:p>

<o:p> </o:p>

How to use ACT with Act.exe'sbrowser recording feature:<o:p></o:p>

<o:p> </o:p>

I will take the example of testing a web page which willsaves data to a database by calling a web service which in turn will call theData access layer to save the data to the database. <o:p></o:p>

<o:p> </o:p>

1.Launch Act.exe from Programs | Microsoft Visual Studio.NET | Visual Studio .NET Enterprise Features | Microsoft Application CenterTest to open the default ACT Samples project. <o:p></o:p>

2. Right-click on the Tests node, select New Test to startthe New Test Wizard, and click on Next to open the Test Source dialog. <o:p></o:p>

3. Select the Record a New Test option, and click on Nexttwice to accept the VBScript language default, open the Browser Record dialog,and click on Start Recording to open an instance of IE. <o:p></o:p>

4. Replace about: blank with your starting URL (eg:http://localhost/TestACT/AddTrain.aspx) in the Address textbox and record thesequence of operations to execute. <o:p></o:p>

(In this example, the sequence of operations are ->enter the values in the controls on the web form (AddTrain.aspx) and will clickon th e button which will call the web service to insert the value intothe database. )<o:p></o:p>

5. Return to the Wizard, click on Stop Recording, closeIE, and click on Next. <o:p></o:p>

6. In the Test Properties dialog, type the name of thetest, click on Next and Finish to dismiss the Wizard, and click on the testname item under the Tests node to display the VBScript code automaticallyrecorded for the test (see Figure 1).<o:p></o:p>

<o:p> </o:p>

<!–[if gte vml 1]–><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter"> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0"> <v:f eqn="sum @0 1 0"> <v:f eqn="sum 0 0 @1"> <v:f eqn="prod @2 1 2"> <v:f eqn="prod @3 21600 pixelWidth"> <v:f eqn="prod @3 21600 pixelHeight"> <v:f eqn="sum @0 0 1"> <v:f eqn="prod @6 1 2"> <v:f eqn="prod @7 21600 pixelWidth"> <v:f eqn="sum @8 21600 0"> <v:f eqn="prod @7 21600 pixelHeight"> <v:f eqn="sum @10 21600 0"> </v:f> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"> <o:lock v:ext="edit" aspectratio="t"></o:lock><v:shape id="_x0000_i1025" type="#_x0000_t75" style="width: 477pt; height: 336.75pt;"></v:shape></v:path></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:f></v:formulas></v:stroke>

<o:p></o:p>

</v:shapetype>

<o:p> </o:p>

<o:p> </o:p>

7. Right-click on the TestName item and choose Propertiesto open the General page of the TestName Properties dialog, where you set thenumber of simultaneous browser connections and duration or number of iterationsof the test. Use a single connection and 100 iterations for the initial test(see Figure 2). <o:p></o:p>

<o:p> </o:p>

<o:p></o:p>

<o:p> </o:p>

<o:p> </o:p>

8. Press Ctrl+S to save the project and Ctrl+F5 to startthe test. Clicking on the Show Details button displays a requests/second graph(see Figure 3). Click on Close to return to ACT when the test completes. <o:p></o:p>

<o:p> </o:p>

<o:p></o:p>

<o:p> </o:p>

<o:p> </o:p>

9.Click on the Results node, expand the TestName node, andmark the checkbox for the test to display a summary graph of requests/second. ACTprovides detailed tabular test data below the graph.<o:p></o:p>

<o:p> </o:p>

Application Center Test <o:p></o:p>

<o:p> </o:p>

Overview: Summary <o:p></o:p>

<o:p> </o:p>

Test Name: ACTReal: Emptytest <o:p></o:p>

<o:p></o:p>

Test Run Name: Report-Emptytest-Sep 13, 200215-20-34 <o:p></o:p>

<o:p></o:p>

Test Started: 9/13/2002 3:15:32 PM <o:p></o:p>

<o:p></o:p>

Test Duration: 00:00:05:00 <o:p></o:p>

<o:p></o:p>

Test Iterations: 34,028 <o:p></o:p>

<o:p></o:p>

Test Notes: <o:p></o:p>

- <o:p></o:p>

<o:p></o:p>

Properties<o:p></o:p>

<o:p></o:p>

Test type: Dynamic <o:p></o:p>

Simultaneousbrowser connections: 5 <o:p></o:p>

Warm up time(secs): 0 <o:p></o:p>

Test duration: 00:00:05:00 <o:p></o:p>

Testiterations: 34,028 <o:p></o:p>

<o:p></o:p>

<o:p></o:p>

Detailed testresults generated: Yes <o:p></o:p>

<o:p></o:p>

Summary <o:p></o:p>

<o:p></o:p>

Total number of requests: 34,029 <o:p></o:p>

Total number of connections: 34,028 <o:p></o:p>

Average requests per second: 113.43 <o:p></o:p>

Average time to first byte (msecs): 5.74 <o:p></o:p>

Average time to last byte (msecs): 5.94 <o:p></o:p>

Average time to last byte per iteration (msecs): 5.94 <o:p></o:p>

Number of unique requests made in test: 1 <o:p></o:p>

Number of unique response codes: 1 <o:p></o:p>

<o:p> </o:p>

Errors Counts <o:p></o:p>

<o:p></o:p>

HTTP: 0 <o:p></o:p>

DNS: 0 <o:p></o:p>

Socket: 0 <o:p></o:p>

<o:p></o:p>

<o:p> </o:p>

Additional Network Statistics <o:p></o:p>

<o:p> </o:p>

Average bandwidth (bytes/sec): 619,894.95 <o:p></o:p>

Number of bytes sent (bytes): 11,842,092 <o:p></o:p>

Number of bytes received (bytes): 174,126,393 <o:p></o:p>

Average rate of sent bytes (bytes/sec): 39,473.64 <o:p></o:p>

Average rate of received bytes (bytes/sec): 580,421.31 <o:p></o:p>

Number of connection errors: 0 <o:p></o:p>

Number of send errors: 0 <o:p></o:p>

Number of receive errors: 0 <o:p></o:p>

Number of timeout errors: 0 <o:p></o:p>

<o:p></o:p>

Response Codes <o:p></o:p>

<o:p></o:p>

Response Code: 200 – The request completed successfully. <o:p></o:p>

Count: 34,029 <o:p></o:p>

Percent (%): 100.00<o:p></o:p>

<o:p> </o:p>

<o:p> </o:p>

<o:p> </o:p>

<o:p> </o:p>

Perform a series of tests with an increasing number ofsimultaneous browser connections to evaluate your site's scalability. I useone, t

wo, three, five, and 10 simultaneous connections in my tests, because CPUusage pins at 100 percent for two to five connections, depending on the amountof C# code behind the page and the service being consumed.<o:p></o:p>

<o:p> </o:p>

Conclusions

Microsoftapplication test center is a power tool for performing functional as well asperformance testing of your web site. It makes your job easy- to mention a few,by simulating the number of connections made simultaneously to the server andby generating the graph automatically. It has also got lot of functionality,which provides an easy way to perform functional testing of your site. <o:p></o:p>

<o:p> </o:p>

<o:p> </o:p>

Authors<o:p></o:p>

<o:p> </o:p>

Download Source

<st1:personname w:st="on">Ravi</st1:personname> Chander Gunishetti<o:p></o:p>

<o:p> </o:p>

I'm aProject Engineer working in Wipro Technologies since 2003. <o:p></o:p>

<o:p> </o:p>

I am acertified professional (MCSD.NET + MCAD.NET + MCP) with 3+ years of softwaredevelopment experience specializing in Web and Client/Servertechnologiestrained by Microsoft in the .NET Technologies.
Experience in using .NET technologies (C#, ASP.net and Web services)
Proficient in Back-end database programming (Stored Procedures, triggers)using SQL Server and Oracle.
Strong in Object Oriented methodologies and design. Experience in all phasesof the software development project life cycle.
Proficient in web technologies like XML, HTML/DHTML, JavaScript and VBScript<o:p></o:p>

StrongN-tier application development experience using Visual Basic, ASP, COM+, SQLServer.
<!–[if !supportLineBreakNewLine]–>
<!–[endif]–><o:p></o:p>

<st1:personname w:st="on">Harikishan Jayaraj</st1:personname><o:p></o:p>

<o:p> </o:p>

I hadbeen working as a programmer since early 2000, primarily focused on intranetweb applications using ASP, SQL 2000 and Oracle. Was part of the team to developEnterprise Mobile applications in eVC++ and ATL COM using WindowsCEoperating system and MS Pocket Access as the database. Itransitioned to .NET in March 2002. I am an MCSD+ MCAD certified professionaland currently working for WIPRO TECHNOLOGIES, Hyderabad, INDIA. Workedextensively on Microsoft.NET technologies which includes ASP.NET with C#.Remoting and Web Services being the core areas.

Twitter Digg Delicious Stumbleupon Technorati Facebook Email

No comments yet... Be the first to leave a reply!