"Tests with Parameters" allows you to simply add parameters to your JUnit test methods. TwiP calls such methods with all possible combinations of their parameters... or at least some reasonable subset of commonly failing values in the case of Integers, etc. You can further reduce these values with an assume expression in an annotation, e.g. ">= 0". Alternatively you can specify a static method or field to provide the values for your test method(s), if you want to test with other than the default values. By using TwiP you change the semantics of your tests from existence to for-all quantifiers, i.e. you specify "all ravens are black" instead of "Abraxas is black", "Toni is black", etc. This moves your tests closer to an executable specification, so TwiP is a very nice addition to BDD.