Is it possible to test for multiple exceptions in a single JUnit unit test? I know for a single exception one can use, for example
@Test(expected=IllegalStateException.class)
Now, if I want to test for another exception (say, NullPointerException), can this be done in the same annotation, a different annotation or do I need to write another unit test completely?
You really want the test to do one thing, and to test for that. If you’re not sure as to which exception is going to be thrown, that doesn’t sound like a good test to me.
e.g. (in pseudo-code)
so if you want to test that your method throws 2 different exceptions (for 2 sets of inputs), then you’ll need 2 tests.