SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
Performance Testing Web 2.0
                                   David Chadwick
                              Rational Testing Evangelist
                               dchadwick@us.ibm.com

                                    Dawn Peters
                            Systems Engineer, IBM Rational
                                petersda@us.ibm.com

                                                   QM06 – Performance Testing Web 2.0



© 2009 IBM Corporation
IBM Rational Software Conference 2009




                         WEB 2.0
                    What is it?
                         QM06 – Performance Testing Web 2.0   2
IBM Rational Software Conference 2009




Web 2.0
   Started out as next generation internet, but not very well defined as to
   what that meant.
   Starting to settle down into collaboration. One page can now display from
   multiple sites.
   Moving away from the internet server doing the processing and more
   towards client side processing.




                         QM06 – Performance Testing Web 2.0                    3
Web 2.0 Technology

                         QM06 – Performance Testing Web 2.0



© 2009 IBM Corporation
IBM Rational Software Conference 2009



Technologies fueling Web 2.0

   AJAX – Asynchronous JavaScript and XML
   JSON – JavaScript Object Notation
   Dojo – Open Source JavaScript Toolkit




                         QM06 – Performance Testing Web 2.0   5
IBM Rational Software Conference 2009



AJAX

   Asynchronous JavaScript XML
   Uses XMLHttpRequest which is a DOM API that allows java script to send a
   request directly to web server and load response back into scripting language
   Allows one part of a page to update without having to re-fetch entire page
   contents.




                         QM06 – Performance Testing Web 2.0                        6
IBM Rational Software Conference 2009



JSON
   Java Script Object Notation
   Data representation that is used to pass data between client and server
   Response header has Content-type: text/json
   Sample Data




                         QM06 – Performance Testing Web 2.0                  7
IBM Rational Software Conference 2009



Dojo

   Open source library of java script objects
   Aids in development of AJAX applications
   Executes the XMLHttpRequest and performs communication between client and
   server.
   Can often be identified by the dojo.preventCache in the URI




                         QM06 – Performance Testing Web 2.0                    8
Testing Your
                          Application
                                 QM06 – Performance Testing Web 2.0



© 2009 IBM Corporation
IBM Rational Software Conference 2009



IBM Rational Performance Tester
 What is Performance Testing ?
    The process of exercising an application by emulating actual users
    with a load generation tool for the purpose of finding system bottlenecks
 Why do we need Performance Testing ?
    Because a break at any point in your system means your customers are not getting the service
    you think they are
 IBM Rational Performance Tester
    Automates the performance and scalability testing of the SUT
    Isolates the source of performance bottlenecks and optimizes resource utilization before
    deployment




            Build Scripts          Schedule Workload Execute & Analyze
                         QM06 – Performance Testing Web 2.0                                        10
IBM Rational Software Conference 2009



Testing your application
   Define what you are testing
   Create your tests
   Create your workload
   Run your workload




                         QM06 – Performance Testing Web 2.0   11
IBM Rational Software Conference 2009



Define What You Are Testing

   Need to figure out how many users
   Define performance requirements
   What parts of application are you going to execute
   What is the weight for each part of the application
   What types of users are you testing




                         QM06 – Performance Testing Web 2.0   12
IBM Rational Software Conference 2009



Creating Tests
   Use annotations while recording to help with test readability
   Use split test to create smaller more manageable pieces
      Create performance requirements for important pages and transactions
   Ensure your tests are working correctly
      Use verification points in tests




                         QM06 – Performance Testing Web 2.0                  13
IBM Rational Software Conference 2009



Create Workload
  Define the weight of different scripts you are running
  Number of users
  Length of run




                         QM06 – Performance Testing Web 2.0   14
IBM Rational Software Conference 2009



Run Workload

   Monitor your server and your tests
   Use the real time protocol data viewer to
   monitor individual users
   Monitor response times shown
   Make sure performance requirements are
   passing




                         QM06 – Performance Testing Web 2.0   15
Web 2.0 Challenges

                          QM06 – Performance Testing Web 2.0



© 2009 IBM Corporation
IBM Rational Software Conference 2009




Challenges of Testing Web 2.0
   More client-side processing is occurring
   Concept of a page is changing
   Data Correlation is not as easy




                         QM06 – Performance Testing Web 2.0   17
IBM Rational Software Conference 2009



More Client Side Processing Occurring

   Large amounts of data returned which could lead to
      Not enough memory to process data
      Slow performance because of inefficient client side processing of data
   Client could have memory leaks, which would also lead to out of memory errors
   Capturing client side processing time
      It can increase with the size of data being processed.




                         QM06 – Performance Testing Web 2.0                        18
IBM Rational Software Conference 2009



Concept Of A Page Changing

   Each of these lines, if they are hovered over, will execute an http request. It will
   execute the query and return the list of items, without creating a new page.




 This means you need to be careful where your mouse is and what you are doing or else
 you might be executing queries that are unintended as part of your test. If you do want
 those things to execute, then you need to make sure to wait after causing the query to
 execute so that RPT will know that that is supposed to be a page.




                         QM06 – Performance Testing Web 2.0                                19
IBM Rational Software Conference 2009



Concept Of A Page Changing
   It’s like a page within a page




                         QM06 – Performance Testing Web 2.0   20
IBM Rational Software Conference 2009



Concept Of A Page Changing

   Anatomy of an RPT HTTP Page
      Each page has a primary request. This request is the main request that will
      send out all other requests on the page.
      When the response from the primary request has been received, we start
      releasing requests.
      Requests after the primary request go out in parallel with each other.
      The number of requests that are executing in parallel is dependent on the
      number of connections that were used at record time.
      This is helpful in replicating the asynchronous AJAX requests that go out.




                         QM06 – Performance Testing Web 2.0                         21
IBM Rational Software Conference 2009



Data Correlation Is Not As Easy

   Data returned from the server does not have the same name as data that is sent to
   the server.
      Caused by java script.
   Testers have to do manual work to fix up these data correlations
      Use Data Source View and Find More Substitution Sites




                         QM06 – Performance Testing Web 2.0                        22
IBM Rational Software Conference 2009



Mismatched Response And Request Data

Server response returns data that looks like




 Request sends data that looks like




                         QM06 – Performance Testing Web 2.0   23
Web 2.0 Tricks and
                        Tips
                             QM06 – Performance Testing Web 2.0



© 2009 IBM Corporation
IBM Rational Software Conference 2009



Web 2.0 Tips and Tricks

   Enhancements made to RPT 8.1 to aid in Web 2.0 testing
   Recording
   Determining “health” of test
   Fixing “health” of test




                         QM06 – Performance Testing Web 2.0   25
IBM Rational Software Conference 2009



Enhancements to RPT 8.1 That Aid Web 2.0 Testing

   Improved recognition of JSON strings
      RPT used to only look for name=value pairs, and can now match “name”:”value”
      Improved regular expressions to harvest data out of JSON
   Annotations – Allows user to give direction at record time
      User can input comments that will be inserted into the test to show what was happening
      when a request was generated
      Pages can be named
      Transactions can be created
   Better page recognition
      RPT can now identify new response data types and use them to create pages
   Split test
      Users can now record smaller pieces at a time and mix and match them




                         QM06 – Performance Testing Web 2.0                                    26
IBM Rational Software Conference 2009



Hints to Record Web 2.0

   Go slow. Wait 5 seconds after a page comes up before performing another action
   Name your pages while recording.
      Requests are not for entire pages, but just a small action.
      Entering a name as you go for each action will help with test readability
   Start with a simple transaction in the your product so you can learn you application
   Be purposeful with your mouse movements and actions
   Make sure server is set up the way all users will be accessing it
      Seed your data
      Record as “type” of user you will play back with




                         QM06 – Performance Testing Web 2.0                           27
IBM Rational Software Conference 2009



Determining “health” of your test

   Use the Real Time Protocol Data View




                         QM06 – Performance Testing Web 2.0   28
IBM Rational Software Conference 2009



Determining “health” of your test
    Look in the test log
      Look at message in test log.
      Text is saying data correlation failed.
      Click on Element to back to test to debug.




                           QM06 – Performance Testing Web 2.0   29
IBM Rational Software Conference 2009



Fixing “Health” Of Test

   Find failed data correlations
      Web 2.0 applications do not match their response data to the request data. This means a
      lot of applications will have missing correlations in the URI and POST data.
      Use test log and real time protocol data viewer to hunt them down
   Use Protocol Data Viewer compare feature to compare logs and tests
   Use test editor and data source view to fix failed data correlations
      Find More Substitution sites to find all places that need to be correlated




                         QM06 – Performance Testing Web 2.0                                     30
IBM Rational Software Conference 2009



Find More Substitution Sites
 Right click on value that needs to be correlated. Substitute From -> Data Source View




    Go to Test Data Source View and click on
    Candidates tab. Find your match and click
    Substitute From.




                         QM06 – Performance Testing Web 2.0                              31
IBM Rational Software Conference 2009



Find More Substitution Sites continued

   Go back to substitution site, right click on it,
   and say Find->More Substitution Sites.
   Note substitution site is now pink to show it
   is correlated.




                          QM06 – Performance Testing Web 2.0   32
IBM Rational Software Conference 2009



Find More Substitution Sites continued
Select all matches that show up in Search Window, right click, Substitute In Data Source View




  In the Test Data Sources Window, select
  the References tab, and select the
  reference you just created. Click Substitute
  From.




                         QM06 – Performance Testing Web 2.0                                     33
IBM Rational Software Conference 2009



Find More Substitution Sites continued

   When you are substitution more than one site at a time, you will be presented with a dialog
   that will let you control what you do for each substitution site. Finish this dialog and you’re
   done! You’ve correlated all missing correlations for the value.




                         QM06 – Performance Testing Web 2.0                                          34
IBM Rational Software Conference 2009




                         QM06 – Performance Testing Web 2.0   35
IBM Rational Software Conference 2009



Split Login and Logout from CreateWorkItem

   Right Click on Login page, Split Test. Name your two tests, Click Finish. Repeat for
   logout script.




                         QM06 – Performance Testing Web 2.0                               36
IBM Rational Software Conference 2009




                         QM06 – Performance Testing Web 2.0   37
IBM Rational Software Conference 2009




© Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind,
express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have
the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM
software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities
referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature
availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines
Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.


                                                  QM06 – Performance Testing Web 2.0                                                                                                            38

Más contenido relacionado

La actualidad más candente

5 rqm gdd-sharmila-ramesh
5 rqm gdd-sharmila-ramesh5 rqm gdd-sharmila-ramesh
5 rqm gdd-sharmila-ramesh
IBM
 
Rl Partner Webinar To Share
Rl Partner  Webinar To ShareRl Partner  Webinar To Share
Rl Partner Webinar To Share
Compuware APM
 
Contributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environmentContributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environment
Funambol
 
Deawsj 7 ppt-2_b
Deawsj 7 ppt-2_bDeawsj 7 ppt-2_b
Deawsj 7 ppt-2_b
Niit Care
 
Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal Server
Rohit Kelapure
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
VMware vFabric
 

La actualidad más candente (20)

AD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And TomorrowAD201 - IBM Domino Application Development Today And Tomorrow
AD201 - IBM Domino Application Development Today And Tomorrow
 
5 rqm gdd-sharmila-ramesh
5 rqm gdd-sharmila-ramesh5 rqm gdd-sharmila-ramesh
5 rqm gdd-sharmila-ramesh
 
Large Scale Migration from WebLogic to JBoss
Large Scale Migration from WebLogic to JBossLarge Scale Migration from WebLogic to JBoss
Large Scale Migration from WebLogic to JBoss
 
How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012How to make a Load Testing with Visual Studio 2012
How to make a Load Testing with Visual Studio 2012
 
Alfresco Web Content Management Roadmap - 3.2 and Beyond
Alfresco Web Content Management Roadmap - 3.2 and BeyondAlfresco Web Content Management Roadmap - 3.2 and Beyond
Alfresco Web Content Management Roadmap - 3.2 and Beyond
 
Enterprise Flex Using Cairngorm
Enterprise Flex Using CairngormEnterprise Flex Using Cairngorm
Enterprise Flex Using Cairngorm
 
1812 icap-v1.3 0430
1812 icap-v1.3 04301812 icap-v1.3 0430
1812 icap-v1.3 0430
 
Rl Partner Webinar To Share
Rl Partner  Webinar To ShareRl Partner  Webinar To Share
Rl Partner Webinar To Share
 
The AMIS Report from Oracle Open World and JavaOne 2011
The AMIS Report from Oracle Open World and JavaOne 2011The AMIS Report from Oracle Open World and JavaOne 2011
The AMIS Report from Oracle Open World and JavaOne 2011
 
Eclipse Developement @ Progress Software
Eclipse Developement @ Progress SoftwareEclipse Developement @ Progress Software
Eclipse Developement @ Progress Software
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
 
Contributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environmentContributing to OSS in a commercial non-OSS environment
Contributing to OSS in a commercial non-OSS environment
 
What is Loadrunner ?
What is Loadrunner ?What is Loadrunner ?
What is Loadrunner ?
 
Classloader leak detection in websphere application server
Classloader leak detection in websphere application serverClassloader leak detection in websphere application server
Classloader leak detection in websphere application server
 
Performance testing using hp load runner
Performance testing using hp load runnerPerformance testing using hp load runner
Performance testing using hp load runner
 
Deawsj 7 ppt-2_b
Deawsj 7 ppt-2_bDeawsj 7 ppt-2_b
Deawsj 7 ppt-2_b
 
Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal Server
 
What's new in SharePoint 2013
What's new in SharePoint 2013What's new in SharePoint 2013
What's new in SharePoint 2013
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
 
Webservices(or)SoapUI Interview Questions
Webservices(or)SoapUI Interview QuestionsWebservices(or)SoapUI Interview Questions
Webservices(or)SoapUI Interview Questions
 

Destacado

How To Make It Real - Hayden Lindsey
How To Make It Real - Hayden LindseyHow To Make It Real - Hayden Lindsey
How To Make It Real - Hayden Lindsey
Roopa Nadkarni
 
Hang On A Minute - Ankur Goyal
Hang On A Minute - Ankur GoyalHang On A Minute - Ankur Goyal
Hang On A Minute - Ankur Goyal
Roopa Nadkarni
 
Challenges In Building Enterprise Mashups - Rick B
Challenges In Building Enterprise Mashups - Rick BChallenges In Building Enterprise Mashups - Rick B
Challenges In Building Enterprise Mashups - Rick B
Roopa Nadkarni
 
Overcoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O RourkeOvercoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O Rourke
Roopa Nadkarni
 
Trasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep KatochTrasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep Katoch
Roopa Nadkarni
 
Smarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj ChandraSmarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj Chandra
Roopa Nadkarni
 

Destacado (7)

How To Make It Real - Hayden Lindsey
How To Make It Real - Hayden LindseyHow To Make It Real - Hayden Lindsey
How To Make It Real - Hayden Lindsey
 
Hang On A Minute - Ankur Goyal
Hang On A Minute - Ankur GoyalHang On A Minute - Ankur Goyal
Hang On A Minute - Ankur Goyal
 
MCIF- Per Kroll
MCIF-  Per KrollMCIF-  Per Kroll
MCIF- Per Kroll
 
Challenges In Building Enterprise Mashups - Rick B
Challenges In Building Enterprise Mashups - Rick BChallenges In Building Enterprise Mashups - Rick B
Challenges In Building Enterprise Mashups - Rick B
 
Overcoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O RourkeOvercoming Contradictions - Mike O Rourke
Overcoming Contradictions - Mike O Rourke
 
Trasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep KatochTrasnformation Design Patterns - Sandeep Katoch
Trasnformation Design Patterns - Sandeep Katoch
 
Smarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj ChandraSmarter Products For A Smarter PLanet - Neeraj Chandra
Smarter Products For A Smarter PLanet - Neeraj Chandra
 

Similar a web 2. 0 performance testing - Dave chadwick

Effective testing of rich internet applications
Effective testing of rich internet applicationsEffective testing of rich internet applications
Effective testing of rich internet applications
Rashwin
 
Internship Report
Internship ReportInternship Report
Internship Report
Jiali Chen
 
ArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web ApplicationsArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
Vs2010 Apiit Mix On Campus_Ngan Seok ChernVs2010 Apiit Mix On Campus_Ngan Seok Chern
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
Quek Lilian
 
Performance testslideshowrecent
Performance testslideshowrecentPerformance testslideshowrecent
Performance testslideshowrecent
Future Simmons
 
Scalable And Usable Web Applications
Scalable And Usable Web ApplicationsScalable And Usable Web Applications
Scalable And Usable Web Applications
Clint Edmonson
 

Similar a web 2. 0 performance testing - Dave chadwick (20)

Effective testing of rich internet applications
Effective testing of rich internet applicationsEffective testing of rich internet applications
Effective testing of rich internet applications
 
Webservices Testing - A Changing Landscape
Webservices Testing - A Changing LandscapeWebservices Testing - A Changing Landscape
Webservices Testing - A Changing Landscape
 
Node Summit 2016: Web App Architectures
Node Summit 2016:  Web App ArchitecturesNode Summit 2016:  Web App Architectures
Node Summit 2016: Web App Architectures
 
Web 2.0 Development with IBM DB2
Web 2.0 Development with IBM DB2Web 2.0 Development with IBM DB2
Web 2.0 Development with IBM DB2
 
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
What’s new in IBM BPM 8.5.7 CF2016.06 - CF2017.03
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Introduction core web vitals
Introduction  core web vitalsIntroduction  core web vitals
Introduction core web vitals
 
Introduction core web vitals
Introduction core web vitalsIntroduction core web vitals
Introduction core web vitals
 
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
 
Defy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client ApplicationsDefy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client Applications
 
ArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web ApplicationsArcReady - Scalable And Usable Web Applications
ArcReady - Scalable And Usable Web Applications
 
Startups without Servers
Startups without ServersStartups without Servers
Startups without Servers
 
Global Logic sMash Overview And Experiences
Global Logic   sMash  Overview And  ExperiencesGlobal Logic   sMash  Overview And  Experiences
Global Logic sMash Overview And Experiences
 
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
Vs2010 Apiit Mix On Campus_Ngan Seok ChernVs2010 Apiit Mix On Campus_Ngan Seok Chern
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
 
JavaPerformanceChapter_11
JavaPerformanceChapter_11JavaPerformanceChapter_11
JavaPerformanceChapter_11
 
Manipulating Web App Interfaces: a new approach to input validation testing
Manipulating Web App Interfaces: a new approach to input validation testingManipulating Web App Interfaces: a new approach to input validation testing
Manipulating Web App Interfaces: a new approach to input validation testing
 
Performance testslideshowrecent
Performance testslideshowrecentPerformance testslideshowrecent
Performance testslideshowrecent
 
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
 
Sure Shot Ways To Improve And Scale Your Node js Performance.pdf
Sure Shot Ways To Improve And Scale Your Node js Performance.pdfSure Shot Ways To Improve And Scale Your Node js Performance.pdf
Sure Shot Ways To Improve And Scale Your Node js Performance.pdf
 
Scalable And Usable Web Applications
Scalable And Usable Web ApplicationsScalable And Usable Web Applications
Scalable And Usable Web Applications
 

Más de Roopa Nadkarni

New integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean InnesNew integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean Innes
Roopa Nadkarni
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
Roopa Nadkarni
 
Accelerated test case - Anish bhanu
Accelerated test case - Anish bhanuAccelerated test case - Anish bhanu
Accelerated test case - Anish bhanu
Roopa Nadkarni
 
Solving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holtSolving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holt
Roopa Nadkarni
 
RQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumarRQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumar
Roopa Nadkarni
 
Req Pro - Andreas gschwind
Req Pro - Andreas gschwindReq Pro - Andreas gschwind
Req Pro - Andreas gschwind
Roopa Nadkarni
 
Extending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldtExtending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldt
Roopa Nadkarni
 
EM overview- - Hayden lindsey
EM overview- - Hayden lindseyEM overview- - Hayden lindsey
EM overview- - Hayden lindsey
Roopa Nadkarni
 
Application security vision - John b
Application security vision - John bApplication security vision - John b
Application security vision - John b
Roopa Nadkarni
 
Real Insights Real Results - Steve Robinson
Real Insights Real Results - Steve RobinsonReal Insights Real Results - Steve Robinson
Real Insights Real Results - Steve Robinson
Roopa Nadkarni
 
Opportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve RobinsonOpportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve Robinson
Roopa Nadkarni
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin Nally
Roopa Nadkarni
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha Krishnamurthy
Roopa Nadkarni
 
RQM GDD - Sharmila Ramesh
RQM GDD -  Sharmila RameshRQM GDD -  Sharmila Ramesh
RQM GDD - Sharmila Ramesh
Roopa Nadkarni
 
Develop Web20 With Rad - Tim Frnacis Sarika S
Develop Web20 With Rad - Tim Frnacis Sarika SDevelop Web20 With Rad - Tim Frnacis Sarika S
Develop Web20 With Rad - Tim Frnacis Sarika S
Roopa Nadkarni
 
Performance Management With Rational Insight - Karthi D
Performance Management With Rational Insight - Karthi DPerformance Management With Rational Insight - Karthi D
Performance Management With Rational Insight - Karthi D
Roopa Nadkarni
 

Más de Roopa Nadkarni (20)

Agile - Monojit basu
Agile - Monojit basuAgile - Monojit basu
Agile - Monojit basu
 
New integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean InnesNew integrations for synergy and change - Sean Innes
New integrations for synergy and change - Sean Innes
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
 
Agile - Monojit Basu
Agile - Monojit BasuAgile - Monojit Basu
Agile - Monojit Basu
 
Accelerated test case - Anish bhanu
Accelerated test case - Anish bhanuAccelerated test case - Anish bhanu
Accelerated test case - Anish bhanu
 
Solving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holtSolving the enterprise security challenge - Derek holt
Solving the enterprise security challenge - Derek holt
 
RTF - Prasad bhatt
RTF - Prasad bhattRTF - Prasad bhatt
RTF - Prasad bhatt
 
RQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumarRQM in scrum agile testing - Raj kumar
RQM in scrum agile testing - Raj kumar
 
Req Pro - Andreas gschwind
Req Pro - Andreas gschwindReq Pro - Andreas gschwind
Req Pro - Andreas gschwind
 
RFT - Ashish Mathur
RFT - Ashish MathurRFT - Ashish Mathur
RFT - Ashish Mathur
 
Extending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldtExtending Rhapsody -Rick boldt
Extending Rhapsody -Rick boldt
 
EM overview- - Hayden lindsey
EM overview- - Hayden lindseyEM overview- - Hayden lindsey
EM overview- - Hayden lindsey
 
Application security vision - John b
Application security vision - John bApplication security vision - John b
Application security vision - John b
 
Real Insights Real Results - Steve Robinson
Real Insights Real Results - Steve RobinsonReal Insights Real Results - Steve Robinson
Real Insights Real Results - Steve Robinson
 
Opportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve RobinsonOpportunities In Challenging Times - Steve Robinson
Opportunities In Challenging Times - Steve Robinson
 
Achieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin NallyAchieving Agility At Scale - Martin Nally
Achieving Agility At Scale - Martin Nally
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha Krishnamurthy
 
RQM GDD - Sharmila Ramesh
RQM GDD -  Sharmila RameshRQM GDD -  Sharmila Ramesh
RQM GDD - Sharmila Ramesh
 
Develop Web20 With Rad - Tim Frnacis Sarika S
Develop Web20 With Rad - Tim Frnacis Sarika SDevelop Web20 With Rad - Tim Frnacis Sarika S
Develop Web20 With Rad - Tim Frnacis Sarika S
 
Performance Management With Rational Insight - Karthi D
Performance Management With Rational Insight - Karthi DPerformance Management With Rational Insight - Karthi D
Performance Management With Rational Insight - Karthi D
 

Último

Último (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

web 2. 0 performance testing - Dave chadwick

  • 1. Performance Testing Web 2.0 David Chadwick Rational Testing Evangelist dchadwick@us.ibm.com Dawn Peters Systems Engineer, IBM Rational petersda@us.ibm.com QM06 – Performance Testing Web 2.0 © 2009 IBM Corporation
  • 2. IBM Rational Software Conference 2009 WEB 2.0 What is it? QM06 – Performance Testing Web 2.0 2
  • 3. IBM Rational Software Conference 2009 Web 2.0 Started out as next generation internet, but not very well defined as to what that meant. Starting to settle down into collaboration. One page can now display from multiple sites. Moving away from the internet server doing the processing and more towards client side processing. QM06 – Performance Testing Web 2.0 3
  • 4. Web 2.0 Technology QM06 – Performance Testing Web 2.0 © 2009 IBM Corporation
  • 5. IBM Rational Software Conference 2009 Technologies fueling Web 2.0 AJAX – Asynchronous JavaScript and XML JSON – JavaScript Object Notation Dojo – Open Source JavaScript Toolkit QM06 – Performance Testing Web 2.0 5
  • 6. IBM Rational Software Conference 2009 AJAX Asynchronous JavaScript XML Uses XMLHttpRequest which is a DOM API that allows java script to send a request directly to web server and load response back into scripting language Allows one part of a page to update without having to re-fetch entire page contents. QM06 – Performance Testing Web 2.0 6
  • 7. IBM Rational Software Conference 2009 JSON Java Script Object Notation Data representation that is used to pass data between client and server Response header has Content-type: text/json Sample Data QM06 – Performance Testing Web 2.0 7
  • 8. IBM Rational Software Conference 2009 Dojo Open source library of java script objects Aids in development of AJAX applications Executes the XMLHttpRequest and performs communication between client and server. Can often be identified by the dojo.preventCache in the URI QM06 – Performance Testing Web 2.0 8
  • 9. Testing Your Application QM06 – Performance Testing Web 2.0 © 2009 IBM Corporation
  • 10. IBM Rational Software Conference 2009 IBM Rational Performance Tester What is Performance Testing ? The process of exercising an application by emulating actual users with a load generation tool for the purpose of finding system bottlenecks Why do we need Performance Testing ? Because a break at any point in your system means your customers are not getting the service you think they are IBM Rational Performance Tester Automates the performance and scalability testing of the SUT Isolates the source of performance bottlenecks and optimizes resource utilization before deployment Build Scripts Schedule Workload Execute & Analyze QM06 – Performance Testing Web 2.0 10
  • 11. IBM Rational Software Conference 2009 Testing your application Define what you are testing Create your tests Create your workload Run your workload QM06 – Performance Testing Web 2.0 11
  • 12. IBM Rational Software Conference 2009 Define What You Are Testing Need to figure out how many users Define performance requirements What parts of application are you going to execute What is the weight for each part of the application What types of users are you testing QM06 – Performance Testing Web 2.0 12
  • 13. IBM Rational Software Conference 2009 Creating Tests Use annotations while recording to help with test readability Use split test to create smaller more manageable pieces Create performance requirements for important pages and transactions Ensure your tests are working correctly Use verification points in tests QM06 – Performance Testing Web 2.0 13
  • 14. IBM Rational Software Conference 2009 Create Workload Define the weight of different scripts you are running Number of users Length of run QM06 – Performance Testing Web 2.0 14
  • 15. IBM Rational Software Conference 2009 Run Workload Monitor your server and your tests Use the real time protocol data viewer to monitor individual users Monitor response times shown Make sure performance requirements are passing QM06 – Performance Testing Web 2.0 15
  • 16. Web 2.0 Challenges QM06 – Performance Testing Web 2.0 © 2009 IBM Corporation
  • 17. IBM Rational Software Conference 2009 Challenges of Testing Web 2.0 More client-side processing is occurring Concept of a page is changing Data Correlation is not as easy QM06 – Performance Testing Web 2.0 17
  • 18. IBM Rational Software Conference 2009 More Client Side Processing Occurring Large amounts of data returned which could lead to Not enough memory to process data Slow performance because of inefficient client side processing of data Client could have memory leaks, which would also lead to out of memory errors Capturing client side processing time It can increase with the size of data being processed. QM06 – Performance Testing Web 2.0 18
  • 19. IBM Rational Software Conference 2009 Concept Of A Page Changing Each of these lines, if they are hovered over, will execute an http request. It will execute the query and return the list of items, without creating a new page. This means you need to be careful where your mouse is and what you are doing or else you might be executing queries that are unintended as part of your test. If you do want those things to execute, then you need to make sure to wait after causing the query to execute so that RPT will know that that is supposed to be a page. QM06 – Performance Testing Web 2.0 19
  • 20. IBM Rational Software Conference 2009 Concept Of A Page Changing It’s like a page within a page QM06 – Performance Testing Web 2.0 20
  • 21. IBM Rational Software Conference 2009 Concept Of A Page Changing Anatomy of an RPT HTTP Page Each page has a primary request. This request is the main request that will send out all other requests on the page. When the response from the primary request has been received, we start releasing requests. Requests after the primary request go out in parallel with each other. The number of requests that are executing in parallel is dependent on the number of connections that were used at record time. This is helpful in replicating the asynchronous AJAX requests that go out. QM06 – Performance Testing Web 2.0 21
  • 22. IBM Rational Software Conference 2009 Data Correlation Is Not As Easy Data returned from the server does not have the same name as data that is sent to the server. Caused by java script. Testers have to do manual work to fix up these data correlations Use Data Source View and Find More Substitution Sites QM06 – Performance Testing Web 2.0 22
  • 23. IBM Rational Software Conference 2009 Mismatched Response And Request Data Server response returns data that looks like Request sends data that looks like QM06 – Performance Testing Web 2.0 23
  • 24. Web 2.0 Tricks and Tips QM06 – Performance Testing Web 2.0 © 2009 IBM Corporation
  • 25. IBM Rational Software Conference 2009 Web 2.0 Tips and Tricks Enhancements made to RPT 8.1 to aid in Web 2.0 testing Recording Determining “health” of test Fixing “health” of test QM06 – Performance Testing Web 2.0 25
  • 26. IBM Rational Software Conference 2009 Enhancements to RPT 8.1 That Aid Web 2.0 Testing Improved recognition of JSON strings RPT used to only look for name=value pairs, and can now match “name”:”value” Improved regular expressions to harvest data out of JSON Annotations – Allows user to give direction at record time User can input comments that will be inserted into the test to show what was happening when a request was generated Pages can be named Transactions can be created Better page recognition RPT can now identify new response data types and use them to create pages Split test Users can now record smaller pieces at a time and mix and match them QM06 – Performance Testing Web 2.0 26
  • 27. IBM Rational Software Conference 2009 Hints to Record Web 2.0 Go slow. Wait 5 seconds after a page comes up before performing another action Name your pages while recording. Requests are not for entire pages, but just a small action. Entering a name as you go for each action will help with test readability Start with a simple transaction in the your product so you can learn you application Be purposeful with your mouse movements and actions Make sure server is set up the way all users will be accessing it Seed your data Record as “type” of user you will play back with QM06 – Performance Testing Web 2.0 27
  • 28. IBM Rational Software Conference 2009 Determining “health” of your test Use the Real Time Protocol Data View QM06 – Performance Testing Web 2.0 28
  • 29. IBM Rational Software Conference 2009 Determining “health” of your test Look in the test log Look at message in test log. Text is saying data correlation failed. Click on Element to back to test to debug. QM06 – Performance Testing Web 2.0 29
  • 30. IBM Rational Software Conference 2009 Fixing “Health” Of Test Find failed data correlations Web 2.0 applications do not match their response data to the request data. This means a lot of applications will have missing correlations in the URI and POST data. Use test log and real time protocol data viewer to hunt them down Use Protocol Data Viewer compare feature to compare logs and tests Use test editor and data source view to fix failed data correlations Find More Substitution sites to find all places that need to be correlated QM06 – Performance Testing Web 2.0 30
  • 31. IBM Rational Software Conference 2009 Find More Substitution Sites Right click on value that needs to be correlated. Substitute From -> Data Source View Go to Test Data Source View and click on Candidates tab. Find your match and click Substitute From. QM06 – Performance Testing Web 2.0 31
  • 32. IBM Rational Software Conference 2009 Find More Substitution Sites continued Go back to substitution site, right click on it, and say Find->More Substitution Sites. Note substitution site is now pink to show it is correlated. QM06 – Performance Testing Web 2.0 32
  • 33. IBM Rational Software Conference 2009 Find More Substitution Sites continued Select all matches that show up in Search Window, right click, Substitute In Data Source View In the Test Data Sources Window, select the References tab, and select the reference you just created. Click Substitute From. QM06 – Performance Testing Web 2.0 33
  • 34. IBM Rational Software Conference 2009 Find More Substitution Sites continued When you are substitution more than one site at a time, you will be presented with a dialog that will let you control what you do for each substitution site. Finish this dialog and you’re done! You’ve correlated all missing correlations for the value. QM06 – Performance Testing Web 2.0 34
  • 35. IBM Rational Software Conference 2009 QM06 – Performance Testing Web 2.0 35
  • 36. IBM Rational Software Conference 2009 Split Login and Logout from CreateWorkItem Right Click on Login page, Split Test. Name your two tests, Click Finish. Repeat for logout script. QM06 – Performance Testing Web 2.0 36
  • 37. IBM Rational Software Conference 2009 QM06 – Performance Testing Web 2.0 37
  • 38. IBM Rational Software Conference 2009 © Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. QM06 – Performance Testing Web 2.0 38