How do beginners learn performance testing?
Performance testing is likely the most technically challenging among all the myriads of testing realms. Whether the user is new to the deep system knowledge requirements, the immense exposure to architecture required or beginning to understand the real-world traffic models, the whole exercise can be infinitely intimidating for the novices. However, performance testing services are also the most rewarding and fun to accomplish! Given ahead in the various sections, you will find helpful tips and suggestions that will enable you to learn and practice testing and activities essential as a beginner in the field.
Develop reading habits:
The best way to learn about something is to read about it. There are hundreds of books and tens of great authors whose writing style you will find easy to comprehend and digest. There are so many sources of great material available both online and offline for beginners to start their journey into the world of load testing services.
Here are some recommendations that you might find helpful. Beginners start with the first chapter of each to know which style suits them best and continue with the one they find helpful.
- The art of computer systems performance analysis – Raj Jain
- The practical performance analyst – Neil J Gunther
- Effective performance engineering – Shane Evans & Todd DeCapua
- Web application performance testing – Meier, Barber, Banshode, Farre and Rae
- Fundamentals of performance engineering – Keith Smith & Bob Wescott
Develop a mindset for measurement:
As a performance tester, one of the essential critical thinking skills to adopt early on is the art of measurement. Measuring the elapsed time during a step or an action in your testing scenarios makes you aware of the potential performance failure that a user might face after go-live. In addition, the ability to measure the sizes and volumes makes newbies adept at understanding the capacity limits or the potential overutilization of systems.
For example, the beginner is recommended to ask themselves questions from their daily lives such as how many skittles can fit in my hand or how many strawberries will my breakfast bowl fit? Asking such questions outside the purview of computer systems helps develop a mindset for performance testing services.
Another skill that testers should develop is various aspects of calculations. Start by working on the minimum, maximum, and average values and slowly advancing to complex calculations like standard deviation, percentiles, frequency distribution, histograms, etc.
Graphs are found everywhere in a testers’ world. Everybody loves charts as well. They help us depict data in a visual format. As a testing tool, graphs open new horizons; hence, after you have mastered the calculations, you will need to learn about trendlines, scatter plots, how to make various types of graphs and charts. Start by viewing the CPU and memory graph on your PC and decode it to understand your own system’s load capacities and performance.
Start subscribing to podcasts:
What happens when you feel saturated by actively reading and calculating various stuff? Beginners start feeling exhausted, and rightly so, getting to know load testing services is a tiring journey. To overcome this, we recommend listening to podcasts so that you passively learn through knowledge osmosis. Here is a list to help you start
- MIT Performance Engineering
The wonderful thing about podcasts is that whether you are driving, running, exercising or cooking, there is minimal effort.
Start using the pen and paper more:
As a part of load testing services, one thing that you will have to do is write things down. Whether it is calculations, or charts, documenting different things will enable you to develop superior testing things as a beginner. A few suggestions for you to begin can be:
1. Performance user story
Something that describes the user journey through various functionalities of the application or software.
2. Prerequisites of an App
Write down whatever you think is needed to begin performance testing services like configurations, data, environments, tools, etc.
3. Transaction flow diagrams
Visualize on paper how the data will flow in the application or how various steps come together to give the desired outcome from the code.
Collaboration and other skills:
When it comes to delivering good load testing services to the clients, it never is a one-person show. There are teams involved, and many times team members help each other out in fixing performance issues. It is the collected knowledge that helps resolve problems, and testers learn from the pool of knowledge. As a beginner, it is advisable to have performance 1:1’s with experienced testers, do some pairing and mobbing with peers or facilitate lunch, and learn to start understanding others.
Learning about various tools and how to use them to provide performance testing services is the last thing any novice should do. However, you need to understand the principles behind the device before you dig into the complex tools available.