Client-side Performance Testing Tutorial

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.

Getting Started with Client-side Performace Testing Workshop

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.