To ensure the product being built is usable, with reasonably acceptable performance, we need to ensure the product is designed, built and validated from each of these Non-Functional Requirements perspective.
In vodQA conference - “Push the Envelope” held on 25th April, 2015 at ThoughtWorks, Bangalore, I conducted a workshop on a specific aspect of Client-side Performance Monitoring & Testing.
I have also done this workshop in vodQA Geek Night at ThoughtWorks, Hyderabad, on 14th May 2015, and in vodQA Pune - Innovations in Testing, at ThoughtWorks, Pune on 6th June 2015.
I started off explaining the various activities that encompass Performance Engineering and Performance Testing. Then I focussed on what is Client-side Performance Testing, how can you monitor the same, and eventually, how do you test and automate the validation of Client-side Performance? The latter part was done in combination of talk, demo and hands-on-activities.
Abstract of the workshop
In this workshop, we will see the different dimensions of Performance Testing and Performance Engineering, and focus on Client-side Performance Testing.
Before we get to doing some Client-side Performance Testing activities, we will first understand how to look at client-side performance, and putting that in the context of the product under test. We will see, using a case study, the impact of caching on performance, the good & the bad! We will then experiment with some tools like WebPageTest and Page Speed to understand how to measure client-side performance.
Lastly - just understanding the performance of the product is not sufficient. We will look at how to automate the testing for this activity - using WebPageTest (private instance setup), and experiment with yslow - as a low-cost, programmatic alternative to WebPageTest.