End to End Testing: The Forgotten Test
End to end testing is the final qualifier for any software, hardware, web service or any combination thereof. Once your core functionality is in place, this ultimate real-world check gives you verification that your product is ready to go. At least it should be…End to End testing was once an integral part of any test plan. It was common practice to ensure that your product actually worked the way a customer would expect it to. It was understood that the most accurate way to verify that your product was complete was to test it from one end to the other, from beginning to end. Somewhere along the way this basic
technique
was lost. What was once a solid practice has since been abandoned. It is more and more common to find
QA Testers
who either don’t understand what end to end testing is or, if they do understand, don’t seem to grasp its significance. How else can you be completely confident that your software does what you think it should?
Why Not?
So what happened? Why don’t more
SQA
teams employ this testing anymore? That is a very good question. This oversight in testing is often responsible for last-second fixes that endanger the success of the entire project.When a project plans for end to end testing and executes it thoroughly and on time, everyone is happier. The end-of-project chaos is minimized. The need for overtime and last-minute, high-risk code changes is reduced or completely removed. And all of this happens because the right testing is executed at the right time.Why then is this testing so often overlooked, ignored, or forgotten? Many sloppy habits have infiltrated the industry and become widely accepted. One such misconception that has become very common is the belief that if each component is tested, then the entire process will work. Unfortunately for those who believe this (and for those who buy their software) it is simply wrong. Unit tests, when developed and implemented properly, do validate the functionality of each component.
Automated testing
can verify existing code in much less time than a human. Environmental monitors can alert the development team when areas are at risk. But none of those tests can duplicate the true end-user experience. Only end to end testing can provide the information a QA Professional needs to determine if their software is ready for its target audience. Only the
video game tester
can evaluate whether a game is actually fun or not. That is their job! No software can do that…at least not yet.
When Will This Change?
Once habits have been established, it can be very difficult to convince people to change them. In the case of software testing, once a
QA Manager
gets rewarded for their approach – whether it is sound or not – they may see no reason to alter it.Until a company understands that end to end testing will actually save them money, it will not be required industry wide. When a company sees the difference in their bottom line, then change will occur. Simple comparison of projects shows that even basic end to end testing results in lower cost, higher quality end products. Validating core functionality and all associated variables as early as possible allows for lower risk code fixes. This results in fewer new issues being introduced, allows option flexibility, and reduces the need for extraneous and needlessly redundant testing. Each of those items results in a cost benefit. And not only does that save you project money, but you end up with a project that your consumer will be happier with. This results in return sales, free marketing and endorsements, and higher team morale. All these benefits from one simple test – just use the product, as intended, from one end to the other. So, why don’t more teams implement it? Maybe they need a refresher software testing course. Or maybe they need to
return to the fundamentals.
Return from
End to End Testing: The Forgotten Test
to
Successful Quality Assurance Home

|