Performance Testing 101: The Basics
Posted on Mar, 2013 by Admin
This is the first in a multi-part series to address the basics of performance testing applications. It’s for the beginner, but it is also for the experienced engineer to share with project team members when educating them on the basics as well. Project Managers, Server Team members, Business Analysts, and other roles can utilize this information as a guide to understanding performance testing process, the typical considerations, and how to get started when you have never embarked on such a journey. This blog series will cover performance testing from a project management point of view, and describe best practices based on the years of experience Northway Solutions Group has with load testing. It will cover key questions to ask during the planning and preparation phases, and offer ways to get the answers to those questions.
Performance testing should be part of every implementation project as well as ongoing maintenance and regression of applications. It is important to have a process designed to operate with a repeatable standard that can be used across multiple projects. It’s also important to have an education on what performance testing is, and go over the information needed in order to be successful.
Why performance test your application?
Performance testing your application provides many potential benefits:
- Prevents costly failures of mission-critical applications.
- Assures performance and functionality under real-world conditions.
- Locates potential problems before your customers do.
- Reduces development time.
- Reduces infrastructure costs.
Applications need to be scalable, reliable, and responsive. Traffic volumes can change dramatically in a matter of seconds. Long waits, sluggish performance, or errors can send customers to the competition. At the same time, multi-tiered architectures grow more and more complex. Bottlenecks and crashes can occur anywhere. Before systems go-live, what can be done to optimize performance and minimize future headaches
Slowdowns and bottlenecks can be identified in advance by testing the site with simulated user traffic. This process is known as performance testing. Projects performing a performance test for the first time are usually surprised to learn that their infrastructure can handle only a fraction of the expected traffic before performance degrades dramatically. Many times, the first response is to add more hardware. However, there are many problems that hardware just won’t solve. A holistic approach and a 360-degree view of all tiers, including the application and network layers need to be considered before throwing hardware at problems.
After a performance test, adjustments ranging from minor adjustments to major reconfigurations can vastly improve system performance. The performance test can then be repeated to find further problems or to retest the system over time. Because it improves customer satisfaction and avoids unnecessary upgrades, the performance testing cycle is a crucial step in developing any application.
In the next installment of this blog series we will outline the definition of performance testing and some key terms.