静的メソッドはAssertJを使用して例外をスローすることを確認するには?

サイベックス:

私は、このメソッドをテストしようとすると、

    static void validatePostcode(final String postcode, final String addressLine)
    {
        if(! hasValidPostcode(postcode, addressLine)) {
            throw new InvalidFieldException("Postcode is null or empty ");
        }
    }

次のテストを使用して

    @Test
    public void testThrowsAnException()
    {
        assertThatThrownBy(validatePostcode("", "")).isInstanceOf(InvalidFieldException.class);
    }

私はIntelliJの中に、このエラーメッセージが表示されます

アサーションでassertThatThrownBy(org.assertj.core.api.ThrowableAssert.ThrowingCallable)は(無効)に適用することはできません

 
と同じことassertThatExceptionOfType

静的メソッドは、実際にAssertJを使用してチェックされない例外をスローすることをテストすることが可能ですか?私は私のテストでは何を変更する必要がありますか?

R. I:

コンパイルエラーが示すように、その方法は投げ呼び出し可能と予想しています。

@Test
public void testThrowsAnException()
{
    assertThatThrownBy(() -> validatePostcode("", "")).isInstanceOf(InvalidFieldException.class);
}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=230342&siteId=1