The DRY testing pattern
Treating automated tests with the same care and respect as the application that we are trying to test is the key to long-term success. Adopting common software development principles and design patterns will prevent some costly maintenance in the future. One of these principles is the Don't Repeat Yourself (DRY) principle; the most basic idea behind the DRY principle is to reduce long-term maintenance costs by removing all unnecessary duplication.
Tip
There are a few times when it is okay to have a duplicate code, at least temporarily. As Donald Knuth so eloquently stated, "Premature optimization is the root of all evil (or at least most of it) in programming."
The DRY testing pattern embraces the DRY principle and expands on it. Not only do we remove the duplicate code and duplicate test implementations, but we also remove duplicate test goals.
Note
A test goal or test target is the main idea behind any given test. The rule of thumb is if you cannot describe...