The Article & Link of IRRICA.COM

Technology & Tasks of TEST PDF Print E-mail
Written by Angela Tan, Taiwan   
Friday, 30 September 2011 14:27

 

 

Technology

 

Performance testing technology employs one or more PCs or Unix servers to act as injectors – each emulating the presence of numbers of users and each running an automated sequence of interactions (recorded as a script, or as a series of scripts to emulate different types of user interaction) with the host whose performance is being tested. Usually, a separate PC acts as a test conductor, coordinating and gathering metrics from each of the injectors and collating performance data for reporting purposes. The usual sequence is to ramp up the load – starting with a small number of virtual users and increasing the number over a period to some maximum. The test result shows how the performance varies with the load, given as number of users vs response time. Various tools, are available to perform such tests. Tools in this category usually execute a suite of tests which will emulate real users against the system. Sometimes the results can reveal oddities, e.g., that while the average response time might be acceptable, there are outliers of a few key transactions that take considerably longer to complete – something that might be caused by inefficient database queries, pictures etc.

Performance testing can be combined with stress testing, in order to see what happens when an acceptable load is exceeded –does the system crash? How long does it take to recover if a large load is reduced? Does it fail in a way that causes collateral damage?

Analytical Performance Modeling is a method to model the behaviour of an application in a spreadsheet. The model is fed with measurements of transaction resource demands (CPU, disk I/O, LANWAN), weighted by the transaction-mix (business transactions per hour). The weighted transaction resource demands are added-up to obtain the hourly resource demands and divided by the hourly resource capacity to obtain the resource loads. Using the responsetime formula (R=S/(1-U), R=responsetime, S=servicetime, U=load), responsetimes can be calculated and calibrated with the results of the performance tests. Analytical performance modelling allows evaluation of design options and system sizing based on actual or anticipated business usage. It is therefore much faster and cheaper than performance testing, though it requires thorough understanding of the hardware platforms.

Tasks to undertake

Tasks to perform such a test would include:

§  Decide whether to use internal or external resources to perform the tests, depending on in house expertise (or lack thereof)

§  Gather or elicit performance requirements (specifications) from users and/or business analysts

§  Develop a high-level plan (or project charter), including requirements, resources, timelines and milestones

§  Develop a detailed performance test plan (including detailed scenarios and test cases, workloads, environment info, etc.)

§  Choose test tool(s)

§  Specify test data needed and charter effort (often overlooked, but often the death of a valid performance test)

§  Develop proof-of-concept scripts for each application/component under test, using chosen test tools and strategies

§  Develop detailed performance test project plan, including all dependencies and associated timelines

§  Install and configure injectors/controller

§  Configure the test environment (ideally identical hardware to the production platform), router configuration, quiet network (we don’t want results upset by other users), deployment of server instrumentation, database test sets developed, etc.

§  Execute tests – probably repeatedly (iteratively) in order to see whether any unaccounted for factor might affect the results

§  Analyze the results - either pass/fail, or investigation of critical path and recommendation of corrective action

 

Last Updated on Thursday, 03 November 2011 17:46
 
Under Copyright © 2017 www.irrica.com. All Right Reserved By IRRICA Software Team. IRRICA.com is the Web Site provided in all of Software Engineering Development(SED) and all of Enhanced Business Implementation(EBI) for Enterprise Software Industry World.
For more information, please issued your enquiry at e-mail: office@irrica.com