Have you ever wondered, “What in the world is that Performance Tester thinking?” Let us enter the inner sanctum of the mysterious yet important world of a Performance Test Engineer’s perspective. To do this, we’ll peek into seven different viewpoints and a few actions within these mindsets.
- Project Manager
- Performance Test Engineer (PTE)
- Business Analyst
- Systems Engineer
- Software Developer
- Data Analyst
- Technical Communicator
A Huge Benefit
This framework brings the following to the forefront:
- Fact - Performance Testing is a multithreaded effort
- Action - As a Performance Tester, day one, do all seven!
1. Project Manager
Come alongside the project’s Project Manager to find out, at the very least, the classic four aspects: Scope, Schedule, Cost, and Quality. Which one really matters? Action and communication plans are also key.
2. Performance Test Engineer
What’s the point of this testing? What is important to the business? Their revenue … their brand … to be competitive? How am I going to tackle this thing? What test strategy will I employ?
3. Business Analyst
Get to know the application with the help of others. Dig into data and collaborate to identify the actions and user stories which are common, critical, and costly. Enable the business to nail down KPIs (Key Performance Indicators) and NFRs (Non-Functional Requirements).
4. System Engineer
Understand the architecture and the technology stack; document at the appropriate level of detail along the way. Ensure and advocate for the right monitoring at the right levels to make the performance testing useful and meaningful.
5. Software Developer
Create maintainable, documented testware which forms a powerful test harness that has all the right data, and code. Use the right tools for the particular job, whether off the shelf or customized.
6. Data Analyst
Tests are run, and Bam! Tons of graphs, raw data, 90th percentiles, and blah blah blah. Time to consume and internalize this information and discover the real meaning that has been uncovered during testing.
7. Technical Communicator
The purpose of any kind of test is to provide important information (i.e. reduce uncertainty) to the project so that in the end, we create a great useful software product. It is crucial to be able to technically communicate what has been ferreted out during testing. This is so much more than red light, green light, thumbs down, thumbs up.
Each of the descriptions above are far too brief, but at least you have a glimpse of these mindsets and can rightfully ask a PTE, “How are you looking at the project right now?”
This blog and concepts are inspired by Dan Downing’s “The 4 Hats of Performance Testing”. Learning about “The 4 Hats” was a revolutionary breakthrough for me in being more effective as a Performance Tester.
- An article on Dan Downing’s “4 Hats of Performance Testing” is found here
- A SlideShare presentation of “4 Hats” can be found here
Sr. Technical Engineer