The online community for software testing & quality assurance professionals
   
Active Topics Today's Topics
Sponsors:
Lost Password?

Home
BetaSoft
Jobs
Training
News
Links
Downloads

News Group:
software.testing


Testing
Automation
Performance
Engineering
Miscellaneous
Statistics
Poll
  QA Forums
  Performance & Load Testing
  Performance Test "Strategy" document

Post New Topic  Post A Reply
profile | register | preferences | faq | search

UBBFriend: Email This Page to Someone! next newest topic | next oldest topic
Author Topic:   Performance Test "Strategy" document
ceeman
New Member

Posts: 4
Registered: Apr 2002

posted 04-12-2002 08:00 AM     Click Here to See the Profile for ceeman   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by ceeman
Gurus,

Need your input on what a "Performance Test Strategy Document" should contain.

To give you some background, I have a fair idea of doing performance tests using tools (webload, loadrunnet, etc.) and also planning & execution (preparing workload profiles, putting monitors, ramp-ups, connection conditions, etc.)

One of the clients has a big production setup (around 30 servers) and wants to setup a performance testing environment. I have been asked to prepare a "Strategy" document for the same.

What should it contain ?
- Methodology ?
- Inputs ?
- Outputs ?
- Overall Plan ?

Thanks in advance for your inputs.

cheers

Ceeman

IP Logged

rstens
Guru

Posts: 321
Registered: Aug 2000

posted 04-12-2002 09:03 AM     Click Here to See the Profile for rstens   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by rstens
This is the introduction for the methodology I wrote (and adapted from examples in literature) for our internal Performance Testing manual. This methodology is independent of the kind of tool you want to use.
***********************************
3 Performance Testing Methodology
This chapter describes the activities in the general methodology for performance testing. This systematic approach will form part of the Methodology and Testing Standards within WCB. The previous chapter talks about when certain activities need to take place and what the general objective is of these activities. In this chapter, we try to focus on how we plan to do this.
When starting with performance testing, you have to realize that most situations are unique. The metrics, workload, and evaluation techniques used for one project or phase are often not fully applicable for the next project or phase. Nevertheless, there are steps common to all performance testing exercises, following these steps will help define the performance test exercise in an efficient and consistent manner.

The methodology consists of the following 10 steps:
1. Set Goals and System boundaries
2. Define Services/Components and possible outcomes
3. Select Metrics
4. List Parameters
5. Select Factors to Study
6. Select Evaluation Technique
7. Select Workload
8. Design Tests
9. Run, Analyze and Interpret data
10. Present Results

3.1 Set Goals and System boundaries
The first step in any performance testing planning is to state the goals and define what constitutes the system by defining the system boundaries. Clarifying the boundaries of your performance test is critical and will give you a clear scope and an ability to communicate this to the stakeholders.

3.1.1 Goals
Setting goals involves deliberate interaction with system users, decision-makers, technical- and production support personnel.

Goals for new systems are typically related to:
* Business Requirements
* System Requirements
* Service Level Agreement Requirements

Goals are also known as Test requirements.

3.1.2 System Boundaries (Scope)
Identifying the system boundaries is essential for the definition of your scope.
The definition of the system environment may vary depending upon the goals of the study. The system definition may consist of the CPU, memory or I/O subsystem, the network, the database, the business areas, or the entire computing system itself. How the environment is defined affects the choice of performance metrics and workloads needed to compare alternative objectives.

* Describe the system
* Describe the interfaces with other systems
* Describe the Business Areas that are part of the System Under Test (SUT)
* Describe the parts of the system that will be targeted for the test.

Also, describe the parts that specifically are not included. An out-of-scope statement will remove any uncertainties about the system to be tested.

3.2 Define Services/Components possible outcomes
At a minimum, your overall description should include the following system components:
* Hardware configuration + Settings
* Operating system + Settings
* Support software
* Major applications
* Business Functions
* Business User Scenarios

3.3 Select Metrics
Once the goals have been defined and there is a clear understanding of the system or systems to be evaluated, we can move on to identifying and gathering relevant performance metrics.
The choice of metrics may be dependent on the tools available for collecting and measuring system data and vice versa.

Desirable properties for metrics:
* Be robust (that is, repeatable, precise, insensitive to minor changes)
* Suggest a norm
* Relate to specific services, processes, databases, or messages
* Suggest an improvement strategy
* Be a natural result of a service, process, database, or message
* Be simple (and easy to explain)
* Be predictable and traceable (This allows predictions to be compared with actual experience.)

3.4 List Parameters
List parameters that are known or suspected to affect performance.
The list can be divided into system parameters and workload parameters.
* System parameters include both hardware and software parameters.
* The Workload parameters are the characteristics of user's requests. They contain parameters based on the business scenarios that the application has to support.

The list of parameters might not be complete after the first pass of the analysis. You will be able to extend the list later once you gained more insight into the application under test.

3.5 Select Factors to Study
The total list of parameters can be divided into two parts: those that will be varied during the evaluation and those that will not. The parameters to be varied are called factors and their values are called levels. In general, the list of factors and their values is larger than what the available resources will allow. It is therefore better to start out with a very limited amount of factors and very few levels.

In selecting factors, it is important to consider economic, political and technological restrictions. This will make it possible to select factors that will mitigate the risk for the organization the most.

3.6 Select Evaluation Technique
Performance management is the process of ensuring that a computer system meets predefined performance objectives consistently and efficiently, both now and in the future. In order to evaluate future system behavior, the analyst must use predictive models.

Generally, there are four modeling techniques commonly used for performance management:
* Linear projection
Involves collecting past data, extending or implying trends using scatter plots and regression lines, and comparing the trend line with the current capacity of the system.
* Analytic modeling
Uses queuing theory formulas and algorithms to predict response times and utilization projections from workload characterization data and essential system relationships.
* Simulation
Is the process of exercising your system as if it is used in the real world.
* Benchmarking
Is process of defining the tests and results of your first (or any test for that matter) test as the standard and comparing all subsequent test results with the first test.

3.7 Select Workload
Workload characterization involves studying the user and machine environment, observing key characteristics, and developing a workload model that can be used repeatedly.

Once a workload model is available, the effect of changes in the workload and system can be easily evaluated by changing the parameters of the model. In addition, workload characterization can help you to determine what's normal, prepare a baseline for historical comparison, comply with management reporting, and identify candidates for optimization.

Depending upon the evaluation technique being used, workloads may be characterized in different forms. Some attributes used for classifying a workload include:
* Resource usage
* Application type
* Geographical orientation
* Visibility
* Organizational unit
* Processing type
* Similar growth
* Business process

3.8 Design/Build Tests
Once you have the workload, a list of factors and their levels selected, you need to decide of sequence of tests that offer maximal information with minimal effort. Tests can be designed that will target multiple factors at once. The designed tests will be build into "runnable" tests by the Performance Test Group. Once the tests are there, different scenarios will be created to support the testing effort.

3.9 Run tests, analyze and Interpret data
Armed with the proper workloads and data and with a thorough understanding of the environment and goals of the evaluation, you are ready to run your tests and collect your information. In case of an already existing system, you compare the newly found data to actual system measurements or to data found in earlier tests.

Once the tests are verified and the results appear to be representative of the real system, you are ready to use this baseline model to compare alternative scenarios. The results of each run of the model will provide the information needed to draw conclusions about the set of proposed alternatives.

Conclusions made about each alternative should take into account the variability and randomness of the results. None of your recommendations should be based on conclusions that are extremely sensitive to small changes in the model parameters.

3.10 Present Results
The final step of all performance testing activities is to communicate the results of your analysis and results to the decision-makers. Since this report is the primary deliverable of the performance testing process, it is particularly important that it is clear and reliable. It should give specific, practical findings and recommendations, with little technical jargon and no vague generalities. The project report should serve as a valuable reference and as a convenient baseline for comparing future performance with current performance.
*****************************************

Hope this helps.

------------------
Roland

IP Logged

mwsrosso
Advanced

Posts: 131
Registered: Sep 2001

posted 04-12-2002 12:12 PM     Click Here to See the Profile for mwsrosso   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by mwsrosso

DRAFTPerformanceTestStrategy.zip

 
Hey Ceeman, I have attached a Draft Performance Test Plan that we use as a starting point for our smallish Performance Testing projects.

This is used as a starting point (basically saves us typing the standard stuff each time).

Have a look and see if it gives you any pointers.

I have de-sensitised it so please help yourself.

Mark,
Perf. Analyst.

------------------

IP Logged

gtanaka
Member

Posts: 7
Registered: Apr 2002

posted 04-12-2002 07:48 PM     Click Here to See the Profile for gtanaka   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by gtanaka
Gurus,

I will be looking at both your responses too.
The need for performance testing in the little company I work at is coming up fast.

A bit overwhelming... not sure where to start... concepts are still new to me. The tool I have is SilkPerformer.

Georgia

------------------

IP Logged

LRWRnovice
Guru

Posts: 242
Registered: Jan 2002

posted 04-16-2002 07:04 PM     Click Here to See the Profile for LRWRnovice   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by LRWRnovice
quote:
Originally posted by mwsrosso:
Hey Ceeman, I have attached a Draft Performance Test Plan that we use as a starting point for our smallish Performance Testing projects.

This document is great and gives much needed head on for a starter like me.

------------------

IP Logged

grandhi_rk
New Member

Posts: 1
Registered: Oct 2001

posted 05-02-2002 11:28 AM     Click Here to See the Profile for grandhi_rk   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by grandhi_rk
"DRAFTPerformanceTestStrategy.zip"

is pretty good document for loadtesting (template)

thankx for the contribution

Tahnkx
ram

------------------

IP Logged

Saschab
New Member

Posts: 2
Registered: Jul 2002

posted 07-24-2002 03:18 PM     Click Here to See the Profile for Saschab   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by Saschab

Thanks Guys.
I just registered today and I was looking for tips on Performance and Load testing.
This is GREAT!!

I am actually going to be testing a Web and WAP site. If you have any further advice specific to these could you kindly update me.
MANY THANKS!!!

------------------

IP Logged

Rayr_UK
Advanced Guru

Posts: 407
Registered: Apr 2000

posted 07-30-2002 04:22 AM     Click Here to See the Profile for Rayr_UK   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by Rayr_UK

LoadTestingGuide.doc

 
Really good doc what I have also attached a part (an appendix) of one of my test strategies. To help you with your testing. This will be included in a performance test tool comparison I am currently doing and will be available later this year. It will be similar to the functional automation test tool I did (see downlaods section).

I think VNU may need to read as VNC in the doc.
------------------


[This message has been edited by Rayr_UK (edited 07-30-2002).]

[This message has been edited by Rayr_UK (edited 07-30-2002).]

IP Logged

jkonair
Member

Posts: 32
Registered: Oct 2001

posted 08-24-2002 03:11 AM     Click Here to See the Profile for jkonair   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by jkonair Visit jkonair's Homepage!
Dear everybody,

Good document and discussion, that has given me lots of insight into the subject.

regards
jay

------------------

IP Logged

RSBarber
Moderator

Posts: 852
Registered: Jul 2002

posted 08-26-2002 06:09 AM     Click Here to See the Profile for RSBarber   Edit/Delete Message Copy This Message   Reply w/Quote Search for more posts by RSBarber Visit RSBarber's Homepage!
mwsrosso,

Pretty good doc. I have two comments (for you and the others who read the strategy).

1) using a standard 20 second think time between every page and ramping up 1 VU per 15 seconds is going to lead to some EXTREMELY unrealistic results. You've got tiered requirements by page, you need teired think times (or delays) by page AND BY USER. They need to be randomized.

2) using script and group names to describe testing scenarios is useless to anyone other than the performance test engineer. Draw a picture. Or at least describe the steps that the VU in each script takes.

Again, as I am sure some of you are tired of reading, the first 3 articles in a 12 part series I am writing cover these topics in detail. Anyone who is interested can email me directly (they are too large to attach, and the downloads area doesn't accept files, just links)

------------------
Scott Barber
NOBLE(STAR
Sr. Performance Engineer
sbarber@noblestar.com
http://www.noblestar.com

IP Logged

All times are PT (US)

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic | Top
Post New Topic  Post A Reply
Hop to:

Contact Us | BetaSoft Inc. | Privacy Statement

Copyright © 1997-2003 BetaSoft Inc.


Ultimate Bulletin Board 5.45c