exception - 如何在 Kotlin 中测试预期的未经检查的异常?

标签 exception testing junit kotlin unchecked-exception

我正在尝试在 Kotlin 中编写一个测试,以确保在特定情况下抛出未经检查的异常。

我正在尝试像这样使用 org.junit.jupiter.api.Assertions.assertThrows:

assertThrows(MyRuntimeException::class, Executable { myMethodThatThrowsThatException() })

当我尝试这个时,我得到一个

Type inference failed compiler error

因为我的 Exception 不是 CheckedException 而是 RuntimeException。有没有什么好的方法可以在不进行幼稚的 try catch 的情况下测试这种行为?

最佳答案

您可以使用 assertFailsWith来自 Kotlin 标准库:

assertFailsWith<MyRuntimeException> { myMethodThatThrowsThatException() }

关于exception - 如何在 Kotlin 中测试预期的未经检查的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48812309/

相关文章:

java - 以非交互方式将多行标准输入传递给交互式 Java 命令行程序

使用前缀的 PHPUnit 测试文件

php - 测试我的 php 脚本和表单

android - 为什么在内联创建mockito模拟时我会看到性能提升?

android - 在 Android View 中使用 UI 元素进行测试

C++ std::库之间的异常

java - 在 Java 中处理 ClosedByInterruptException

java - 通过 NoClassDefFoundError 示例分析堆栈跟踪的提示

java - checked exception/unchecked exception应该什么时候选?

java - 如何使用 JMockit 模拟 Spring 注入(inject)类