Performance Testing Process SASQAG March 2007 Emily Ren T-Mobile.

Slides:



Advertisements
Similar presentations
How We Manage SaaS Infrastructure Knowledge Track
Advertisements

Cultural Heritage in REGional NETworks REGNET Project Meeting Content Group
High level QA strategy for SQL Server enforcer
Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Topics to be discussed Introduction Performance Factors Methodology Test Process Tools Conclusion Abu Bakr Siddiq.
Performance Testing - Kanwalpreet Singh.
Web Performance Tuning Lin Wang, Ph.D. US Department of Education Copyright [Lin Wang] [2004]. This work is the intellectual property of the author. Permission.
© 2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Performance & Availability Lifecycle.
Client side performance in Web based Banking applications Divakar Prabhu Infosys Limited (NASDAQ: INFY)
1 Real-time End-to-End Transaction Visibility into Distributed and Mainframe Applications Steve Saville Mainframe Technical Account Manager – Compuware.
Welcome to Load Runner Training Program
© 2014 VMware Inc. All rights reserved. BlazeMeter Load Testing Solution with vCloud Air High-level Overview Jan 2015.
Load Runner Mercury Performance Test Tool. Topics to be Covered Why Performance ? Why Performance ? Definitions: Performance Testing Definitions: Performance.
JProbe. 1. JProbe Use JProbe Profile –identify method and line level performance bottlenecks Use JProbe Memory Debugger –investigating memory leaks and.
Oracle Enterprise Manager – Cloud Control 12c Simon Keys, The Small Ronnie Martin Lambert, The Large Ronnie.
ManageEngine® Applications Manager
Load Testing Using NeoLoad
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
  Copyright 2003 by SPAN Technologies. Performance Assessments of Internet Systems By Kishore G. Kamath SPAN Technologies Testing solutions for the enterprise.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
©Company confidential 1 Performance Testing for TM & D – An Overview.
Business Intelligence Dr. Mahdi Esmaeili 1. Technical Infrastructure Evaluation Hardware Network Middleware Database Management Systems Tools and Standards.
Towards Autonomic Hosting of Multi-tier Internet Services Swaminathan Sivasubramanian, Guillaume Pierre and Maarten van Steen Vrije Universiteit, Amsterdam,
Understanding and Managing WebSphere V5
Sitefinity Performance and Architecture
1 © ALP International CorporationMarch 2001 MD-CFUG Automating your Website Testing By Andrew L. Pollner and Lei Wang ALP International Corporation.
Load Test Planning Especially with HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
“Manage the Chaos” Mercury for J2EE Helen Tang Product Marketing Manager Mercury Interactive
Introduction to HP LoadRunner Getting Familiar with LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Cloud Testing Speaker : Mrityunjaya Hikkalgutti Date : 3 rd July 2010.
Software Testing Life Cycle
August 01, 2008 Performance Modeling John Meisenbacher, MasterCard Worldwide.
How to Design and Implement Load Testing for Sakai The Michigan Experience.
LoadRunner SE Guide 김범수 한국비지네스써비스 ( 주 )
The New Enterprise Manager: End to End Performance Management of Oracle Solutions Julie Wong Principal Product Manager Arsalan Farooq Senior Development.
The Performance mission is to ensure a positive user experience by monitoring and eliminating system bottlenecks, establish response time baselines for.
Learningcomputer.com SQL Server 2008 – Profiling and Monitoring Tools.
Deploy With Confidence Minimize risks Improve business output Optimize resources.
CONFIDENTIAL INFORMATION CONTAINED WITHIN 9200 – J2EE Performance Tuning How-to  Michael J. Rozlog  Chief Technical Architect  Borland Software Corporation.
How to Run a Scenario In HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Apache JMeter By Lamiya Qasim. Apache JMeter Tool for load test functional behavior and measure performance. Questions: Does JMeter offers support for.
© 2006, National Research Council Canada © 2006, IBM Corporation Solving performance issues in OTS-based systems Erik Putrycz Software Engineering Group.
Compuware Corporation Deliver Reliable Applications Faster Dave Kapelanski Automated Testing Manager.
Performance Testing Test Complete. Performance testing and its sub categories Performance testing is performed, to determine how fast some aspect of a.
Understanding Performance Testing Basics by Adnan Khan.
1 Copyright © 2011 Tata Consultancy Services Limited PERFORMANCE TESTING.
Introduction to Performance Testing Performance testing is the process of determining the speed or effectiveness of a computer, network, software program.
Connect with life Cheryl Johnson VSTS Solution Expert | Canarys Automations Pvt Ltd Performance Testing.
LOAD RUNNER. Product Training Load Runner 3 Examples of LoadRunner Performance Monitors Internet/Intranet Database server App servers Web servers Clients.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
HPHC - PERFORMANCE TESTING Dec 15, 2015 Natarajan Mahalingam.
Intro to Web Server Load Testing © Thank you for attending Introduction to Web Server Load Testing.
Performance Testing - LR. 6/18/20162 Contents Why Load Test Your Web Application ? Functional vs. Load Web Testing Web-Based, Multi-Tiered Architecture.
Performance Assessment for Web-based Systems Min Song, Ph.D. IS 465.
Building Enterprise Applications Using Visual Studio®
Understanding the New PTC System Monitor (PSM/Dynatrace) Application’s Capabilities and Advanced Usage Stephen Vaillancourt PTC Technical Support –Technical.
Blue Mixology.
性能测试那些事儿 刘博 ..
Software Architecture in Practice
Performance Testing Methodology for Cloud Based Applications
Load Testing January 2018 René Ernst.
Performance Load Testing Case Study – Agilent Technologies
ColdFusion Performance Troubleshooting and Tuning
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Performance And Scalability In Oracle9i And SQL Server 2000
PERFORMANCE TESTING.
PERFORMANCE TESTING.
Performance And Scalability In Oracle9i And SQL Server 2000
{Project Name} Organizational Chart, Roles and Responsibilities
Presentation transcript:

Performance Testing Process SASQAG March 2007 Emily Ren T-Mobile

Why We Need Performance Testing? Before release, managers need to know: Do we have enough hardware? Can we handle the target load? How many users can we handle? Is the system fast enough to make customers happy?

Nature of Performance Testing It is very different from functional testing. A very challenging job It requires stellar cooperation and coordination: it is a whole team effort! Automation tools are very powerful, but expensive and complex, training is needed It can be fun too!

Why We Need Performance Testing?  The failure of an application can be costly  Assure performance and functionality under real-world conditions  Locate potential problems before our customers do  Reduce development time – multiple rounds of load testing  Reduce infrastructure cost

When we do it During design and development – What is the best server to support target load? – Define system performance requirements Before release – Is the system reliable enough to go into production? – After functional testing done Post-deployment – What is the cause of performance degradation?

What we are doing Performance testing before release : Application response times - How long does it take to complete a task? Configuration sizing - Which configuration provides the best performance level? Capacity planning - How many users can the system handle? Regression - Does the new version of the software adversely affect response time? Reliability - How stable is the system under heavy work load?

Plan Test Create Scripts Scenario Creation Scenario Execution Result Analysis Load Testing Process Performance Tuning

Perf. Test Planning Documents Performance Testing Initial Assessment - Pre-test plan document - Help project team to brainstorm their test scope Performance Test Request Form - Detail information related to whole performance testing process, including setup goals, environment, business process, performance requirement (e.g., response time), usage information, internal support team, etc.

What we are doing 1. Test Planning - Before we run load testing - Setup goals Measure application response time Configuration sizing Capacity planning Regression Reliability - Type of testing Load Testing (System performance testing with SLA target load) Stress Testing (Capacity testing to find out breaking point) Duration Testing (Reliability testing to test the system under load)

What we are doing – Cont. - Identify usage information - Business Profile Which business processes to use –BA, Dev team responsible for definition Isolate peak load and peak time –BA, Dev, application support responsible for definition Document user actions and input data for each business process –SME/Functional Testing team responsible for creation of business process document

Sample : Business Profile 1 - HR App. Business Processes Business Process Total Users (%) Avg Number of concurrent users Peak number of concurrent users Preferred Response Time (Total, including think time) Unacceptable Response Time (Total, including think time) Browse20% min> 5 min Time Entry60% min> 5 min Update personal info. 20% min> 3 min Total100%

Sample : Business Profile 2 – eCommerce Business Processes Business Process Total Users (%) Peak Time Peak Load (# of users) Preferred Response Time (Each transaction) Unacceptable Response Time (Each transaction) Create Order 20%4-6 pm sec> 8 sec Browse Catalog 60%4-6 pm sec> 8 sec Display order 20%4-6 pm sec> 8 sec Total100%8000

What we are doing – Cont. - Business Profile is the basis for load testing It is the traffic model of the application The better the documentation of the business processes, the better the test scripts and scenarios. Save time on script and scenario creation Good business profile can make it possible to reuse existing load testing scripts and results later.

What we are doing – Cont. 2. Create Scripts - Automate business processes in LoadRunner VUGen (Virtual User Generator): Scripts are C, C++-like code Scripts are different with different protocol/technology LoadRunner has about 50 protocols, including WAP - Record user actions  Need assistance of SME/Functional Testing group - Add programming and test data in the scripts - E.g. add correlation to handle dynamic data, e.g. session id - Test data may need lot of work from project team

Sample Script web_submit_data("logon.sap", "Action= "Method=POST", "RecContentType=text/html", "Referer= "Snapshot=t3.inf", "Mode=HTML", ITEMDATA, "Name=login_submit", "Value=true", ENDITEM, "Name=j_authscheme", "Value=default", ENDITEM, "Name=j_alias", "Value={UserName}", ENDITEM, "Name=j_password", ENDITEM, "Name=j_language", "Value=EN", ENDITEM, "Name=AgreeTerms", "Value=on", ENDITEM, "Name=Login", "Value=Log on", ENDITEM, LAST);

What we are doing – Cont. 3. Create Test Scenario - Build test scenario according to usage information in Business Profile - Load Calculation - Can use rendezvous point, IP Spoofing, etc. - Run-Time setting  Think time  Pacing  Browser Emulation: simulate browser cache, new user each iteration  Browser version, bandwidth, etc.

What we are doing – Cont. 4. Execute Load Testing - Execute test scenarios with automated test scripts in LoadRunner Controller - Isolate top time transactions with low load - Overdrive test (120% of full load) to isolate SW & HW limitations - Work with Internal Support Team to monitor the whole system, e.g., web server, DB server, middleware, etc.

Example Parameters to Monitor  system - % total processor time  Memory - page faults/sec  Server work queues - bytes transferred/sec  HTTP Response  Number of connections Support team will have better ideas for what to monitor Individual write-up is highly suggested as part of test report ---need to get csv files, then import to LoadRunner

What we are doing – Cont. 5. Analyze Test Result - Analysis - Collect statistics and graphs from LoadRunner - Report results - Most commonly requested results: Transaction Response time Throughput Hits per sec HTTP response Network Delay *Server Performance - Merge graphs to make it more meaningful Transaction response time under load Response time/Vuser vs CPU utilization Cross scenario graphs

What we are doing – Cont. 6. Test Report - Don’t send LoadRunner result and graphs directly - Send summary to the whole team - Report key performance data and back end performance data - Add notes for each test run - Keep test history: for team to compare test runs

What we are doing – Cont. 7. Performance Tuning - Help identify the bottlenecks and degradation points to build an optimal system - Hardware, Configuration, Database, Software, etc - Drill down on transaction details, - e.g. webpage breakdown - Diagnostics - Show Extended Log to dev team - Data returned by server - Advanced Trace: Show logs of all VUser messages and function calls

What we are doing – Cont. 8. Communication Plan - Internal Support Team: - - PM, BA, environment / development / architect, network, DBA, functional test lead, etc. - Resource plan

Timeline/Activities - Example Test Planning, Script Creation – 4 weeks Test Execution – 4 weeks Trail run - 2 days 1.Round 1 – Load Testing: Response time with SLA target load: 1 week 2.Round 2 – Stress Testing: find breaking point: 1 week 3.Round 3 – Duration (Reliability) test: 2 days 4.More performance tuning – 3 days 5.Document and deliver final report – 2-3 days

Projects Projects : All performance testing projects in T-Mobile’s IT dept 40+ projects in <3 years The Standard Performance Testing Process has worked very well on all projects

Automation Tools - Mercury LoadRunner – Scripting: VUGen (Virtual User Generator) – Performance test execution: Controller – build test scenarios according to business profile and load calculation Load Generator – run virtual users – Performance test result analysis Analysis – provides test reports and Graphs –Summarize the system performance

Automation Tools – Performance Center Web-enabled global load testing tool Performance Testing team can manage multiple, concurrent load testing projects across different geographic locations User Site - conduct and monitor load tests. Privilege Manager- manage user and project access rights Administration Site - for overall resource management and technical supervision

Automation Tools - Diagnostics - Pinpoint Root Cause – Solve tough problems  Memory leaks and trashing  Thread deadlock and synchronization  Instance tracing  Exceptions

Diagnostics Methodology in Pre-production Start with monitoring of business process – Which transactions are problematic Eliminate system and network components – Infrastructure monitors and metrics Isolate application Tier and method – Triage (using Transaction Breakdown) Correct behavior and re-test

Broad Heterogeneous Platform Support WebSphere J2EE/Portal Server WebLogic J2EE/Portal Server JBoss, Tomcat, JServ Oracle Application Server J2EE MS.NET Generic/Custom JAVA SAP Net/Weaver J2EE/Portal Oracle 11i Applications Siebel

Performance Engineering - Bridge the Gap  80% of IT Organizations experience failures in apps that passed the test phases and rolled into production  HyPerformix – Performance Engineering  Production line: Designer, Optimizer and Capacity Manager  HyPerformix Optimizer (Capacity Planning): can bridge the gap between testing and production environments and leverage load test data to accurately show how the application will perform when in production.

Performance Engineering - HyPerformix Optimizer  Configuration sizing, Capacity planning  Create production-scale models – Perf. Test team and Architect team work together  Load test and production perf. data are seamlessly integrated with Optimizer  Ensure capacity is match to current and future business requirements  Reduce risk before application deployment

What Performance Testing can do for business?  Performance testing is critical. Competition in market is high: customer switch cost is low, cost to keep customers is high  Performance Testing can protect revenue by helping to isolate and fix problems in the software infrastructure  Improve availability, functionality, and scalability of business critical applications  Ensure products are delivered to market with high confidence that system performance will be acceptable  Proactive performance testing can decrease costs of production support and help desk  A good Performance Testing Process is essential to get performance testing done right and on time!

Questions? Tel: (425) (desk) (425) (cell)