Tester - skills needed for successful software testing (2)

We continue exploring the traits needed for testers to be successful in testing software. The previous post looked at traits 1-3. In this post, let us look at three more Software Tester traits.

Tester Trait 4: Perseverance

Testers must keep at testing, exploring and trying to unearth issues. Bugs may appear intermittently or under certain conditions. Testers should not ignore or give up, but instead try different scenarios to reproduce the issue.

Software Testers must also realize that all products have bugs. If a product looks to be free of bugs, it just needs more testing to find issues that current tests haven't looked at. Testers should always be in the pursuit of bugs and view every defect found by a customer as a slip or gap in their tests which must be addressed immediately.

Tester Trait 5: Creativity

Software Testing is an art. It is not enough to test for the obvious. Finding bugs requires creativity and out-of-the-box thinking in testing. Software Testing must be amongst the most creative of professions. Lets make a fairly simplistic comparison between testing software and software development which is considered to be a creative endeavor. Which of these disciplines needs more creativity ? Is it to "introduce" defects or find defects ? While the example is a bit crude, the idea is that it is harder to find defects when you do not know what and how many defects exist. It requires a high degree of creativity to discover defects in Software.

Tester Trait 6: "Flexible" Perfectionists

Software Testing requires the pursuit of perfection. However, the pursuit of perfection must be tempered with flexibility. There are times when perfection may not be attainable or even be feasible. Testers whilst seeking perfection, should adapt a certain degree of flexibility when perfection is not an ideal goal to seek. As an example, when testers report bugs, they must also pursue a fix for the bug. Now, a fix need not just mean fixing the software. It could be a statement in the release notes or other documentation that highlights the defect as a known and open issue; it could be a case of marketing toning down its spiel or enlightening customers about the potential issue - in the real world, it may not be possible to fix every defect that testers want fixed. Being able to prioritize and pick your battles appropriately, knowing when to give in and when to stick to your guns is important.

In the next upcoming post, we look at the remaining traits of a successful tester. Stay tuned.