In today’s world, the careful performance of tests is the most important means of quality insurance in the practice of software development. Here, quality assurance means testing to see if the software fulfils the functional requirements expected from it. In this context, a test means the execution of a program and then the comparison of the results of the program performance with the expected results. Strictly speaking, a test is successful when the actual results do not agree with the expected results. Since it’s safe to assume that complex programs always contain errors, a test is useless when it fails to bring any of these errors to light. The quality of a program can be increased only if an error can be discovered and subsequently corrected. But even in this case a quality improvement is not guaranteed, because a change to a program intended to remove errors can itself insert other errors.
- Beck, K.: Test-Driven Development by Example. Addison-Wesley, Reading (2003) Google Scholar
- Beck, K.: Simple Smalltalk testing: with patterns (2013). http://www.xprogramming.com/testfram.htm. Accessed 8 August 2013
- Ben-Menachem, M., Marliss, G.S.: Software Quality, Producing Practical and Consistent Software. Thomson Computer Press, London (1997) Google Scholar
- Link, J.: Unit Tests mit Java. Der Test-First-Ansatz. dpunkt.verlag, Heidelberg (2002) Google Scholar
- Myers, G.J., Sandler, C., Badgett, T.: The Art of Software Testing, 3rd edn. Wiley, New York (2011) Google Scholar
- SUnit: the mother of all unit testing frameworks (2013). http://sunit.sourceforge.net/. Accessed 25 August 2013