I’d like to write a TestNG test to make sure an exception is thrown under a specific condition, and fail the test if the exception is not thrown. Is there an easy way to do this without having to create an extra boolean variable?
A related blog post on this subject: http://konigsberg.blogspot.com/2007/11/testng-and-expectedexceptions-ive.html
@Test(expectedExceptions)is useful for the most common cases:Per the documentation a test will fail if no
expectedExceptionis thrown:Here are a few scenarios where
@Test(expectedExceptions)is not sufficient:In such cases, you should just revert to the traditional (pre-TestNG) pattern: