How do you assert that a certain exception is thrown in JUnit 4 tests?

前端 未结 30 1998
忘掉有多难
忘掉有多难 2020-11-21 22:23

How can I use JUnit4 idiomatically to test that some code throws an exception?

While I can certainly do something like this:

@Test
public void testFo         


        
30条回答
  •  無奈伤痛
    2020-11-21 23:15

    BDD Style Solution: JUnit 4 + Catch Exception + AssertJ

    import static com.googlecode.catchexception.apis.BDDCatchException.*;
    
    @Test
    public void testFooThrowsIndexOutOfBoundsException() {
    
        when(() -> foo.doStuff());
    
        then(caughtException()).isInstanceOf(IndexOutOfBoundsException.class);
    
    }
    

    Dependencies

    eu.codearte.catch-exception:catch-exception:2.0
    

提交回复
热议问题