gpt4 book ai didi

java - 如何使用 AssertJ 验证静态方法抛出异常?

转载 作者:行者123 更新时间:2023-11-30 06:01:30 24 4
gpt4 key购买 nike

当我尝试测试这个方法时

    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) in Assertions cannot be applied to (void)


assertThatExceptionOfType 相同。

是否可以使用 AssertJ 测试静态方法实际上抛出未经检查的异常?我应该在测试中更改什么?

最佳答案

如编译错误所示,该方法需要一个抛出可调用对象。

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

关于java - 如何使用 AssertJ 验证静态方法抛出异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57407519/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com