SlideShare uma empresa Scribd logo
1 de 44
Introduction to
Performance
Testing
Part 1
(V1.1)




Author:
Vjacheslav Lukashevich
Edited by:
Eugene Muran
Part 1
     •Test types
     •Measurements and scenarios
     •Testing team
     •Test tools
     •Planning and Implementing tests
Part 2
     •Tool Configuration
     •Test Run
     •Result analysis
     •Facts about development
Fact is that -…
Fact is that -…



No one cares about
     software
   performance
   at beginning
And at the end we get
something like this …
Or even worse…
SMALL REMARK:

ALL OF ABOVE
 MENTIONED
IS ALREADY IN THE
 PAST
Our days
When performance
testing is a “must”

    We expect large data
    volumes
    We expect high load
    Inexperienced
    programmers
    Customer requests it
Question!


What types of
performance testing
exist?
Test types
  Performance Testing
  Load Testing

  Stress Testing
  Endurance testing
  Scalability testing
  Recoverability testing



How we name it - depends on test
  target!
Question!


What we will measure
by the performance
testing?
Application “speed”
performance
characteristics



         Throughput – number of
         actions per time moment.

         Response Time – time
         taken by action to
         complete
Application hardware
characteristics
         Primary resources:
            CPU (%)
              Total CPU usage on host
              CPU usage by target
              process
           Memory Usage
              Used Memory (on host
              or by process)
              Available Memory
           Network
              Number of bytes
              sent/received per
              second through network
              interface
Bottleneck


        “Bottleneck” is the plac
        where performance
        degradation occurs
Scalability




Ability to handle additional workload when:
     Adding hardware (memory, CPU,
     storage)
     Adding additional hosts (machines)
Performance test
targets
      Common targets:
        Get performance statistics
        (application speed)
        Find bugs (software stability
        issues)
        Find out bottleneck’s
        Find out capacity
        Establish baselines

      Other targets
        Scalability check
        Crash test
        Recovery test


            Each test is a scenario
             or a set of scenarios
Question!


Who is participating in
performance testing?
Relationship Between
                     Performance Testing
                     and Tuning

 Performance Tests
                         Tuning process is done when:
                           performance testing reveals
                           system or application
                           characteristics unacceptable
    Performance            to reduce the amount of
   Characteristics         resources being used




Performance Tuning
Performance tuning


    Cooperative effort
      Product vendors
      Architects
      Developers
      Testers
      Database administrators
      System administrators
      Network administrators
Performance testing
activities

        1.   Identify the test
             environment
        2.   Plan and Design tests
        3.   Configure the Test
             Environment
        4.   Implement the Test Design
        5.   Execute the Test
        6.   Analyze Results, Report,
             and Retest
Identifying test
environment:
Hardware

   In ideal case test environment must
   be as close to production
   environment as possible
Identifying test
environment:
Software –key
components
        Operation System
       (MS Windows, Linux,…)

         Application Server
       (IBM Websphere,
       BEA Weblogic,
       Tomcat, …)

         Database Server
       (IBM DB2,
       Oracle,
       MS SQL Server, …)
Identifying test
                     environment:
                     Software
  VERSION#                 For performance tests key
                           software components in
           Configuration   environment must be as close as
                           possible to production
->Patch VERSION#           environment
                           –can impact overall system
                           performance

(Build #)


              <Settings>

 <<Java version>>
Performance testing
    scenarios

Scenario:
  Sequence of steps in
  application
  Represents a use case
Question!


What scenarios we
need to test?
Plan and Design tests:
  Determining Test
  Scenarios

        Key Usage scenarios to
          include:
          most common, frequent
          business-critical
          performance-intensive
          technical concern
          high-visibility, obvious
          contractually obligated
          stakeholder concern
Applying usage
                                                                          pattern for test design
                                                  Daytime user activity
                                                                            Peak
                        4500                                                load   Options:
                        4000
                                                                                   1) Emulate exact usage pattern
                        3500
                                                                                   2) Run under maximum load (peak
User Actions per hour




                        3000
                                                                                     load)
                        2500
                                                                                   3) Run under average load
                        2000

                        1500

                        1000

                         500

                           0
                                                                  0

                                                                  0

                                                                  0

                                                                  0

                                                                  0

                                                                  0

                                                                  0
                            00

                                   00

                                          00




                                                        00
                                                 00




                                                                :0

                                                                :0

                                                                :0

                                                                :0

                                                               :0




                                                                :0
                                                               :0
                          0:

                                 2:

                                        4:

                                               6:

                                                      8:

                                                             10

                                                             12

                                                             14

                                                             16

                                                             18

                                                             20

                                                             22
Plan and Design tests:
Determining Test
Scenarios
         Most important -
         performance
         scenario
         must be Repeatable
         (!)
Repeatable test
scenario
           Data
              prerequisites
              cleanup
           Tests sequence
           Environment
           state
Performance Test Plan

                     Test Plan content
                       Test
                       environment
                       Test data
                       Test scenarios
PERFORMANCE
  TEST PLAN            Performance
                       Measurements
Test Plan: Test Data and
Test Scenarios


        Test prerequisites:
           Database
           Users
           Files (documents, images
           …)

        Test Parameters
        Scenarios list
        Think time
        Load Scheme
        Duration
TEST
IMPLEMENTATION
Environment setup

       Application deployment
       Database setup
       Users/ Access Rights
       System clock
       synchronization
       Performance Monitoring
       services configuration
Stable version
    To avoid the surprises for the
performance testing it is preferable
                                       For performance testing it is
    to select stable, well tested
        by functional testing          preferable to select stable,
         application version           well tested using
                                       functional testing
      Plan it and target for it!
                                       application version
Perform the smoke testing!



                 Before beginning the
                 scripting, verify that
                 the scenarios you
                 are going to
                 implement in your
                 test script are
                 working at all!
TESTING TOOLS
2 Main Purposes of
test tools

       Load Generation




       Measurements/Statistics
       gathering

     Best thing, if the tool can
       do this both tasks in
       parallel
2 ways to emulate
web application

        “Play” with browser
          Links/Button clicks
          Form filling


        Send POST/GET
        request to server
What tools we have
for such testing?
    LoadRunner
    (different protocols: POST/GET,
    web browser
    emulation/GWT/Mobile/SAP)

    Jmeter
    (POST/GET)

    Grinder
    (POST/GET)



  *this is only some of available
    tooling
Capture/Replay

     Pluses (+)
        Fast and easy test creation

     Minuses (-)
       Unstable scripts
       Application change
       sensitivity
       Unnecessary requests in
       scripts
       Overhead on server side for
       replayed scripts
Tests debug


       Like any computer program,
       performance tests also must
       be tested

     Possible checks
       View returned pages during
       replay in test tool
       (in LR - visual test results)
       Test tool logs
       Server logs
Content check

        Check content, that is only
        available, when system
        operates correctly
Books


 Web load for dummies



Performance Testing Guidance for Web
Applications

http://perftestingguide.codeplex.com/downloads/get/17955

Mais conteúdo relacionado

Mais procurados

Load and performance testing
Load and performance testingLoad and performance testing
Load and performance testing
Qualitest
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
Atul Pant
 
Performance Test Plan - Sample 2
Performance Test Plan - Sample 2Performance Test Plan - Sample 2
Performance Test Plan - Sample 2
Atul Pant
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
sonukalpana
 

Mais procurados (20)

Performance Testing using LoadRunner
Performance Testing using LoadRunnerPerformance Testing using LoadRunner
Performance Testing using LoadRunner
 
Performance testing with Jmeter
Performance testing with JmeterPerformance testing with Jmeter
Performance testing with Jmeter
 
Load and performance testing
Load and performance testingLoad and performance testing
Load and performance testing
 
Performance testing presentation
Performance testing presentationPerformance testing presentation
Performance testing presentation
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Load Testing Strategy 101
Load Testing Strategy 101Load Testing Strategy 101
Load Testing Strategy 101
 
Performance testing : An Overview
Performance testing : An OverviewPerformance testing : An Overview
Performance testing : An Overview
 
Types of performance testing
Types of performance testingTypes of performance testing
Types of performance testing
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
 
LoadRunner Performance Testing
LoadRunner Performance TestingLoadRunner Performance Testing
LoadRunner Performance Testing
 
Software testing performance testing
Software testing  performance testingSoftware testing  performance testing
Software testing performance testing
 
Performance Testing And Its Type | Benefits Of Performance Testing
Performance Testing And Its Type | Benefits Of Performance TestingPerformance Testing And Its Type | Benefits Of Performance Testing
Performance Testing And Its Type | Benefits Of Performance Testing
 
Performance Test Plan - Sample 2
Performance Test Plan - Sample 2Performance Test Plan - Sample 2
Performance Test Plan - Sample 2
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
 
Infographic: Importance of Performance Testing
Infographic: Importance of Performance TestingInfographic: Importance of Performance Testing
Infographic: Importance of Performance Testing
 
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
Load and Performance Testing for J2EE - Testing, monitoring and reporting usi...
 
Performance testing
Performance testingPerformance testing
Performance testing
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
Introduction to performance testing
Introduction to performance testingIntroduction to performance testing
Introduction to performance testing
 

Destaque

Manusia & Pengembangan Diri
Manusia & Pengembangan DiriManusia & Pengembangan Diri
Manusia & Pengembangan Diri
Julsherin Frozen
 
Loja.bortolettocosmeticos.com
Loja.bortolettocosmeticos.comLoja.bortolettocosmeticos.com
Loja.bortolettocosmeticos.com
Eduardo Quirino
 

Destaque (7)

Business Analysis in IT by Ilze Buksha, Latvian
Business Analysis in IT by Ilze Buksha, LatvianBusiness Analysis in IT by Ilze Buksha, Latvian
Business Analysis in IT by Ilze Buksha, Latvian
 
DIY: Analyse statique en Java
DIY: Analyse statique en JavaDIY: Analyse statique en Java
DIY: Analyse statique en Java
 
Manusia & Pengembangan Diri
Manusia & Pengembangan DiriManusia & Pengembangan Diri
Manusia & Pengembangan Diri
 
Encuesta
EncuestaEncuesta
Encuesta
 
Data Access using Entity Framework
Data Access using Entity FrameworkData Access using Entity Framework
Data Access using Entity Framework
 
Loja.bortolettocosmeticos.com
Loja.bortolettocosmeticos.comLoja.bortolettocosmeticos.com
Loja.bortolettocosmeticos.com
 
Presentazione mondo sara
Presentazione mondo saraPresentazione mondo sara
Presentazione mondo sara
 

Semelhante a Introduction to Performance Testing Part 1

Testing in an Open Source Middleware Platform Space The WSO2 Way.
Testing in an Open Source Middleware Platform Space  The WSO2 Way.Testing in an Open Source Middleware Platform Space  The WSO2 Way.
Testing in an Open Source Middleware Platform Space The WSO2 Way.
WSO2
 
A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...
Vincenzo Ferme
 
AddQ Testautomatiseringserfarenheter
AddQ TestautomatiseringserfarenheterAddQ Testautomatiseringserfarenheter
AddQ Testautomatiseringserfarenheter
AddQ Consulting
 
Testing using load runner performance testing
Testing using load runner  performance testingTesting using load runner  performance testing
Testing using load runner performance testing
SivaprasanthRentala1975
 

Semelhante a Introduction to Performance Testing Part 1 (20)

Visual Studio 2010 Testing Overview
Visual Studio 2010 Testing OverviewVisual Studio 2010 Testing Overview
Visual Studio 2010 Testing Overview
 
How to Test Asynchronous Code (v2)
How to Test Asynchronous Code (v2)How to Test Asynchronous Code (v2)
How to Test Asynchronous Code (v2)
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Testing in an Open Source Middleware Platform Space The WSO2 Way.
Testing in an Open Source Middleware Platform Space  The WSO2 Way.Testing in an Open Source Middleware Platform Space  The WSO2 Way.
Testing in an Open Source Middleware Platform Space The WSO2 Way.
 
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
 
Automatically Managing Service Dependencies in an OSGi Environment - Marcel O...
Automatically Managing Service Dependencies in an OSGi Environment - Marcel O...Automatically Managing Service Dependencies in an OSGi Environment - Marcel O...
Automatically Managing Service Dependencies in an OSGi Environment - Marcel O...
 
Debugging Integration Flows
Debugging Integration FlowsDebugging Integration Flows
Debugging Integration Flows
 
A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...A Declarative Approach for Performance Tests Execution in Continuous Software...
A Declarative Approach for Performance Tests Execution in Continuous Software...
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Cross-project defect prediction
Cross-project defect predictionCross-project defect prediction
Cross-project defect prediction
 
Implementing Enterprise DevOps: Real Life Experiences
Implementing Enterprise DevOps: Real Life ExperiencesImplementing Enterprise DevOps: Real Life Experiences
Implementing Enterprise DevOps: Real Life Experiences
 
Evaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated DatabasesEvaluating Data Freshness in Large Scale Replicated Databases
Evaluating Data Freshness in Large Scale Replicated Databases
 
Getting started with Office 365 SharePoint 2010 online development
Getting started with Office 365 SharePoint 2010 online developmentGetting started with Office 365 SharePoint 2010 online development
Getting started with Office 365 SharePoint 2010 online development
 
Develop Maintainable Apps - edUiConf
Develop Maintainable Apps - edUiConfDevelop Maintainable Apps - edUiConf
Develop Maintainable Apps - edUiConf
 
AddQ Testautomatiseringserfarenheter
AddQ TestautomatiseringserfarenheterAddQ Testautomatiseringserfarenheter
AddQ Testautomatiseringserfarenheter
 
Nutanix NX-2000 Series Complete Cluster with VMware View: An integrated VDI s...
Nutanix NX-2000 Series Complete Cluster with VMware View: An integrated VDI s...Nutanix NX-2000 Series Complete Cluster with VMware View: An integrated VDI s...
Nutanix NX-2000 Series Complete Cluster with VMware View: An integrated VDI s...
 
Testing using load runner performance testing
Testing using load runner  performance testingTesting using load runner  performance testing
Testing using load runner performance testing
 
Coding Naked
Coding NakedCoding Naked
Coding Naked
 
Pivotal CRM: Optimize your Pivotal Implementation
Pivotal CRM: Optimize your Pivotal ImplementationPivotal CRM: Optimize your Pivotal Implementation
Pivotal CRM: Optimize your Pivotal Implementation
 
Capacity Planning for Linux Systems
Capacity Planning for Linux SystemsCapacity Planning for Linux Systems
Capacity Planning for Linux Systems
 

Mais de C.T.Co (8)

Things They Didn't Teach Me In Academy
Things They Didn't Teach Me In AcademyThings They Didn't Teach Me In Academy
Things They Didn't Teach Me In Academy
 
Project Management in Information Technologies
Project Management in Information TechnologiesProject Management in Information Technologies
Project Management in Information Technologies
 
Mobile vs Desktop
Mobile vs DesktopMobile vs Desktop
Mobile vs Desktop
 
Overview of Android Infrastructure
Overview of Android InfrastructureOverview of Android Infrastructure
Overview of Android Infrastructure
 
Stratoplan 2013 Brief by C.T.Co
Stratoplan 2013 Brief by C.T.CoStratoplan 2013 Brief by C.T.Co
Stratoplan 2013 Brief by C.T.Co
 
Scrum methodology
Scrum methodology Scrum methodology
Scrum methodology
 
Project management in Agile Way
Project management in Agile WayProject management in Agile Way
Project management in Agile Way
 
Windows phone 7
Windows phone 7Windows phone 7
Windows phone 7
 

Introduction to Performance Testing Part 1

  • 2. Part 1 •Test types •Measurements and scenarios •Testing team •Test tools •Planning and Implementing tests Part 2 •Tool Configuration •Test Run •Result analysis •Facts about development
  • 4. Fact is that -… No one cares about software performance at beginning
  • 5. And at the end we get something like this …
  • 7. SMALL REMARK: ALL OF ABOVE MENTIONED IS ALREADY IN THE PAST
  • 9. When performance testing is a “must” We expect large data volumes We expect high load Inexperienced programmers Customer requests it
  • 11. Test types Performance Testing Load Testing Stress Testing Endurance testing Scalability testing Recoverability testing How we name it - depends on test target!
  • 12. Question! What we will measure by the performance testing?
  • 13. Application “speed” performance characteristics Throughput – number of actions per time moment. Response Time – time taken by action to complete
  • 14. Application hardware characteristics Primary resources: CPU (%) Total CPU usage on host CPU usage by target process Memory Usage Used Memory (on host or by process) Available Memory Network Number of bytes sent/received per second through network interface
  • 15. Bottleneck “Bottleneck” is the plac where performance degradation occurs
  • 16. Scalability Ability to handle additional workload when: Adding hardware (memory, CPU, storage) Adding additional hosts (machines)
  • 17. Performance test targets Common targets: Get performance statistics (application speed) Find bugs (software stability issues) Find out bottleneck’s Find out capacity Establish baselines Other targets Scalability check Crash test Recovery test Each test is a scenario or a set of scenarios
  • 18. Question! Who is participating in performance testing?
  • 19. Relationship Between Performance Testing and Tuning Performance Tests Tuning process is done when: performance testing reveals system or application characteristics unacceptable Performance to reduce the amount of Characteristics resources being used Performance Tuning
  • 20. Performance tuning Cooperative effort Product vendors Architects Developers Testers Database administrators System administrators Network administrators
  • 21. Performance testing activities 1. Identify the test environment 2. Plan and Design tests 3. Configure the Test Environment 4. Implement the Test Design 5. Execute the Test 6. Analyze Results, Report, and Retest
  • 22. Identifying test environment: Hardware In ideal case test environment must be as close to production environment as possible
  • 23. Identifying test environment: Software –key components Operation System (MS Windows, Linux,…) Application Server (IBM Websphere, BEA Weblogic, Tomcat, …) Database Server (IBM DB2, Oracle, MS SQL Server, …)
  • 24. Identifying test environment: Software VERSION# For performance tests key software components in Configuration environment must be as close as possible to production ->Patch VERSION# environment –can impact overall system performance (Build #) <Settings> <<Java version>>
  • 25. Performance testing scenarios Scenario: Sequence of steps in application Represents a use case
  • 27. Plan and Design tests: Determining Test Scenarios Key Usage scenarios to include: most common, frequent business-critical performance-intensive technical concern high-visibility, obvious contractually obligated stakeholder concern
  • 28. Applying usage pattern for test design Daytime user activity Peak 4500 load Options: 4000 1) Emulate exact usage pattern 3500 2) Run under maximum load (peak User Actions per hour 3000 load) 2500 3) Run under average load 2000 1500 1000 500 0 0 0 0 0 0 0 0 00 00 00 00 00 :0 :0 :0 :0 :0 :0 :0 0: 2: 4: 6: 8: 10 12 14 16 18 20 22
  • 29. Plan and Design tests: Determining Test Scenarios Most important - performance scenario must be Repeatable (!)
  • 30. Repeatable test scenario Data prerequisites cleanup Tests sequence Environment state
  • 31. Performance Test Plan Test Plan content Test environment Test data Test scenarios PERFORMANCE TEST PLAN Performance Measurements
  • 32. Test Plan: Test Data and Test Scenarios Test prerequisites: Database Users Files (documents, images …) Test Parameters Scenarios list Think time Load Scheme Duration
  • 34. Environment setup Application deployment Database setup Users/ Access Rights System clock synchronization Performance Monitoring services configuration
  • 35. Stable version To avoid the surprises for the performance testing it is preferable For performance testing it is to select stable, well tested by functional testing preferable to select stable, application version well tested using functional testing Plan it and target for it! application version
  • 36. Perform the smoke testing! Before beginning the scripting, verify that the scenarios you are going to implement in your test script are working at all!
  • 38. 2 Main Purposes of test tools Load Generation Measurements/Statistics gathering Best thing, if the tool can do this both tasks in parallel
  • 39. 2 ways to emulate web application “Play” with browser Links/Button clicks Form filling Send POST/GET request to server
  • 40. What tools we have for such testing? LoadRunner (different protocols: POST/GET, web browser emulation/GWT/Mobile/SAP) Jmeter (POST/GET) Grinder (POST/GET) *this is only some of available tooling
  • 41. Capture/Replay Pluses (+) Fast and easy test creation Minuses (-) Unstable scripts Application change sensitivity Unnecessary requests in scripts Overhead on server side for replayed scripts
  • 42. Tests debug Like any computer program, performance tests also must be tested Possible checks View returned pages during replay in test tool (in LR - visual test results) Test tool logs Server logs
  • 43. Content check Check content, that is only available, when system operates correctly
  • 44. Books Web load for dummies Performance Testing Guidance for Web Applications http://perftestingguide.codeplex.com/downloads/get/17955

Notas do Editor

  1. Training based on personal experience in performance testing for various projects
  2. Performance testing.   This type of testing determines or validates the speed, scalability, and/or stability characteristics of the system or application under test. Performance is concerned with achieving response times, throughput, and resource-utilization levels that meet the performance objectives for the project or product. In this guide, performance testing represents the superset of all of the other subcategories of performance-related testing. Load testing.   This subcategory of performance testing is focused on determining or validating performance characteristics of the system or application under test when subjected to workloads and load volumes anticipated during production operations.   Stress testing.   This subcategory of performance testing is focused on determining or validating performance characteristics of the system or application under test when subjected to conditions beyond those anticipated during production operations. Stress tests may also include tests focused on determining or validating performance characteristics of the system or application under test when subjected to other stressful conditions, such as limited memory, insufficient disk space, or server failure. These tests are designed to determine under what conditions an application will fail, how it will fail, and what indicators can be monitored to warn of an impending failure.
  3. Throughput is the number of units of work that can be handled per unit of time; for instance, requests per second, calls per day, hits per second, reports per year, etc.  Response time is a measure of how responsive an application or subsystem is to a client request.
  4. Assessing release readiness by: Enabling you to predict or estimate the performance characteristics of an application in production and evaluate whether or not to address performance concerns based on those predictions. These predictions are also valuable to the stakeholders who make decisions about whether an application is ready for release or capable of handling future growth, or whether it requires a performance improvement/hardware upgrade prior to release. Providing data indicating the likelihood of user dissatisfaction with the performance characteristics of the system. Providing data to aid in the prediction of revenue losses or damaged brand credibility due to scalability or stability issues, or due to users being dissatisfied with application response time. Assessing infrastructure adequacy by: Evaluating the adequacy of current capacity. Determining the acceptability of stability. Determining the capacity of the application’s infrastructure, as well as determining the future resources required to deliver acceptable application performance. Comparing different system configurations to determine which works best for both the application and the business. Verifying that the application exhibits the desired performance characteristics, within budgeted resource utilization constraints. Assessing adequacy of developed software performance by: Determining the application’s desired performance characteristics before and after changes to the software. Providing comparisons between the application’s current and desired performance characteristics. Improving the efficiency of performance tuning by: Analyzing the behavior of the application at various load levels. Identifying bottlenecks in the application. Providing information related to the speed, scalability, and stability of a product prior to production release, thus enabling you to make informed decisions about whether and when to tune the system.
  5. Tuning follows an iterative process that is usually separate from, but not independent of, the performance testing approach a project is following. The following is a brief overview of a typical tuning process: Tests are conducted with the system or application deployed in a well-defined, controlled test environment in order to ensure that the configuration and test results at the start of the testing process are known and reproducible. When the tests reveal performance characteristics deemed to be unacceptable, the performance testing and tuning team enters a diagnosis and remediation stage (tuning) that will require changes to be applied to the test environment and/or the application. It is not uncommon to make temporary changes that are deliberately designed to magnify an issue for diagnostic purposes, or to change the test environment to see if such changes lead to better performance. The cooperative testing and tuning team is generally given full and exclusive control over the test environment in order to maximize the effectiveness of the tuning phase. Performance tests are executed, or re-executed after each change to the test environment, in order to measure the impact of a remedial change. The tuning process typically involves a rapid sequence of changes and tests. This process can take exponentially more time if a cooperative testing and tuning team is not fully available and dedicated to this effort while in a tuning phase. When a tuning phase is complete, the test environment is generally reset to its initial state, the successful remedial changes are applied again, and any unsuccessful remedial changes (together with temporary instrumentation and diagnostic changes) are discarded. The performance test should then be repeated to prove that the correct changes have been identified. It might also be the case that the test environment itself is changed to reflect new expectations as to the minimal required production environment. This is unusual, but a potential outcome of the tuning effort.
  6. What will be
  7. What will be
  8. What will be
  9. In the context of performance testing, a scenario is a sequence of steps in your application. A scenario can represent a use case or a business function such as searching a product catalog, adding an item to a shopping cart, or placing an order.
  10. the Grinder, a Java Load Testing Framework