In the digital age, we have all grown accustomed to instant feedback from our technology. Old timers love to tell stories of what using the old dial up internet was like, usually paired with “I walked to school uphill, both ways”. It always seems to come with an undertone of kids these days are spoiled. However, I will be the first to admit that when something takes a moment too long to load, my first instinct is to pull up either pull up Task Manager and see what is running or check the wifi-speed. Should I work on being a bit more patient? Yeah. Should we all? Probably.
I digress.
The reason we have grown so accustomed to instant feedback is that it is the standard. Like any standard, how do companies measure and enforce it? Performance testing.
Performance testing is the practice of testing an application, program, or network’s performance. This includes speed, traffic handling, and stability although many other markers fall under this category.
Measuring and responding to performance markers leads to enhanced user experience and by extension increased revenue. For example, when waiting on a website to load and it takes too long, many people will click out before it even loads and look at another site. This directly translates into lost potential revenue due to poor performance.
The most effective way to use performance testing is to integrate it very early on in development. It is far more cost and time efficient to integrate early on in development; the initial set up is far less complex and there is less time needed down the line to rework performance issues, as compared to waiting to implement performance testing. Additionally, it is an effective tool to detect and prevent bugs before they become critical.
I really appreciated the insight this article provided. It is seldom that you think of performance testing when in the early stages of development, unless something goes wrong. Working code tends to be the goal. However, the benefits of doing so are hard to ignore. An important take away from this is that with any code you must consider the user-expectation (I like to think of this as if I am just writing code for myself to solve a one-off problem, I don’t care if it takes an extra few seconds to run my program. However, if I was sharing the program with others, it would be incredibly frustrating to them if my code took forever to execute.) Additionally, prioritizing quality in the beginning saves many headaches later. Just because you do not test performance in the beginning does not mean you won’t have to go back and fix it once you do. This is a lesson I will be sure to take keep in mind in the future. This will most likely look like making a conscious effort to make implementation choices that will support efficient performance in the long term as well as prioritizing quality overall.
This blog post was written in response to : https://abstracta.us/blog/performance-testing/why-performance-testing-is-important/
From the blog CS@Worcester – CurrentlyCompiling by currentlycompiling and used with permission of the author. All other rights reserved by the author.