kotlin - Kotlin 中的私有函数和 null 安全运算符测试
问题描述
我正在尝试提高测试覆盖率,但我对某些被视为“未覆盖”或“仅部分覆盖”的行感到困惑,例如:
400 -> throw BadRequestException(response.code(), response.errorBody()?.string())
和
if (response.code() !in 200..299) {
throwError(response)
}
throwError 是一个私有函数。我正在测试,响应代码 204,有一个成功事件和 400,有正确的错误被抛出。但是如何检查 throwError 是否被调用?
另外,当我检查是否抛出了错误 BadRequestException 时,为什么只满足 1 或 2 个条件?
解决方案
在第一种情况下,两个条件应该是:
response.errorBody()
是null
response.errorBody()
不是null
因此,您需要同时覆盖两者才能完全覆盖它。
推荐阅读
- c++ - 在类声明中处理指向成员函数的指针
- python - 在全息视图中,如何对叠加层的分类轴进行排序?
- excel - Excel中的VBA查找所有包含特定文本并复制并粘贴到新工作表
- angular - Angular:防止 DomSanizer 更新 DOM 事件
- azure - Azure Blob 存储支持的通信协议
- python - 在 Python 脚本中使用 Curl 命令
- plot - 从 gnuplot 中的表中标记 2d 等高线图
- javascript - 如何解决 NaN 值不是隐藏字符串
- c++ - 是否可以从 OpenPose 库中实时输出 JSON 数据?
- vb.net - Vb.Net DataGridView 粗体字体样式只有一行