Simplification of the testing process helps to reduce redundancy and create a more time effective procedure. Typical test-design can be made easier by capturing generic patterns and using them with subsequent test designs. Such companies as BugFinders.com are working to harness the power of these common test patterns.
Reusing test designs is not completely problem-free as it is usually necessary to create original test-design details for each particular test. This leads to the defining of completely new application features. However, with the aid of test-design templates, it is very possible to achieve this goal. The idea is to capture common patterns and reuse them, thereby minimizing the ad-hoc work. There are a variety of ways to approach the concept of simplifying the testing process. Microsoft provides an excellent look into the purpose and implementation of test patterns.
Leave It To The Experts:
Those testers with a good deal of experience under their belts often utilize their knowledge to identify patterns. They will look specifically at possible approaches, issues and techniques for every test situation, and match the best situation with the best test.
However, it is only their expert knowledge that allows them to do this. Those who are just beginning will not be able to achieve this alignment simply because the experience required to do so isn’t there. Furthermore, it is nearly impossible for an expert to simplify the information for a novice to understand.
Use A Checklist:
Don’t underestimate the value of a checklist. Not only does a checklist streamline the ideals and thought processes surrounding a project, but also makes them available in an easily digested format for later use.
It is often a simple matter to forget the most obvious of testing procedures, and this tool helps to ensure that even the minutest detail isn’t overlooked by simple human error. Ideally, these lists will be condensed so that they may be widely used.
Go For Generic:
When creating test-design templates, the following should be included.
- Test-case checklists
- Commonplace failure modes
- General validation rules
- Libraries of standard tests
- Application features of typical tests
- Across the board tests which will always be utilized first
By creating this type of generic, but not empty, template, beginning from scratch for every test will be eliminated. It will reduce the chance of human error as well as save time. By including simple, across the board tests that are standardly run first, any staff member can tackle this particular task and get a jump on the project at hand.
Common Failure Modes:
As they say, there is nothing new under the sun, and this goes for software testing as well. Most problems repeat themselves over and over again. Expert testers will know precisely what to look for, whether it is a common flaw within a particular system, a frequent implementation error, or even simple design mistakes.
However, if the information surrounding these common failure modes is not documented, only an expert will know to anticipate them. Simply write the information, convert it, and concatenate appropriately so that even novices can recognize common failure modes.
It’s A Paradox:
Static test data is common in test automation. In other words, fewer bugs are found with less variation in test data. This leads to what is called the pesticide paradox. Basically, there are more bugs in the system than is found with each test pass. Those inactive areas may have undetected bugs that are resistant to testing.
The key here is to avoid a regression-centered approach. Using a more well-rounded method is much more cost efficient and effective. The constant running of more abstracted tests leads to a more useful tool, generic though it may be.
Test patterns are not new, but they are not easily or completely understood by many. While patterns have greatly influenced software engineering since the 1990’s, there hasn’t been much headway in the way of testing. However, the Microsoft Solution Framework team has created a helpful testing methodology, which is outlined here.
Although growing in popularity, there are distinct challenges associated with test patterns, which are simply outlined in this slideshow. However, when patterns are recognized properly, they can greatly reduce the amount of error associated with testing as well as reduce the cost and time involved in said testing.