gpt4 book ai didi

java - 如何测试一个方法是否抛出异常junit5

转载 作者:行者123 更新时间:2023-12-01 07:01:04 48 4
gpt4 key购买 nike

我有一个DocumentTypeDetector具有 detectForRequest() 的类方法。我正在做相应的测试,但我无法验证是否抛出了自定义异常,我使用的是JUNIT 5。

我已经回顾过这里,但答案对我没有帮助,这是我按照示例编写的代码:

@Test
public void tryThrowExceptionForInvalidRequest() throws Exception{

InvalidInputRequestType exceptionThrown = Assertions.assertThrows(
InvalidInputRequestType.class,
() -> {
throw new InvalidInputRequestType("La petición debe estar en un formato valido JSON o XML");
}
);
assertEquals("La petición debe estar en un formato valido JSON o XML", exceptionThrown.getMessage());
}

但这并没有告诉我有关我的测试的任何信息

我需要验证我的方法是否返回相应的异常,如下所示:

@Test
public void tryThrowExceptionForInvalidRequest() throws Exception{
String invalid = "Este es un request invalido";
assertIsThrown(InvalidInputRequestType.class, detector.detectForRequest(invalid));
}

我该如何测试这个?

最佳答案

也许您可以尝试以下代码:

@Test
public void tryThrowExceptionForInvalidRequest() throws Exception {

final String invalid = "Este es un request invalido";

InvalidInputRequestType exceptionThrown = Assertions.assertThrows(
InvalidInputRequestType.class,
() -> {
detector.detectForRequest(invalid);
}
);
assertEquals(invalid, exceptionThrown.getMessage());
}

关于java - 如何测试一个方法是否抛出异常junit5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51129876/

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