Harnessing the Power of Randomized Unit Testing
It is a problem all testers have had. We write tests believing we know how the system should behave, what inputs will precede others, and which calls will be made first and which will be made last. Unfortunately, the system may not operate that way, and as a result our tests are inadequate. However, there is a solution to this problem: Randomized unit testing helps you find bugs in places you wouldn't even think to look by selecting call sequences and parameter values randomly. James Andrews explains the power and potential of randomized testing with demonstrations and case studies of real-world software defects found. He presents RUTE-J, a free Java package modeled after JUnit, which can help you develop code for testing Java units in a randomized way. James explains how assertion style, parameter range selection, and method weight selection can make randomized testing more effective and thorough.
- Why randomized unit tests find defects in unexpected places
- Adding power to your testing with randomization
- Open source tool RUTE-J for randomized unit testing