Short bio: Computer Scientist, FOSS supporter (read more)
Tux Machines (TM)-specific
Many people believe that testing software means slapping a few user-types on to the end of a project to run through an application and make sure it doesn't crash. Others believe testing is debugging, as done by developers as part of the discipline of programming. Testing is, in fact, much more than that. Software testing is a discipline in the quality assurance process of software. It involves analysis, planning, reporting and statistics as well as actual test execution. A career as a software tester requires several skills, including a good understanding of the concepts of programming, resilience and pragmatic, systematic thinking. A dash of people skills is also required, as you are invariably the one telling a developer that there is a problem.
Test tools can be categorised into many different classes, according to what they do, and where they fit into the development lifecycle. Apart from what I've already mentioned, there are tools that generate test data or design tests; tools that interact with an application's GUI (traditionally called test automation tools); tools for performance and load testing; tools for security auditing, web link checkers and so on.
To me, the Linux operating system is a test tool in itself with remarkable functionality and the availability of many tools for Linux.