【发布时间】:2020-12-21 13:02:26
【问题描述】:
是否可以使用 Scala 测试来测试 Unit 返回类型的函数? 如果是,请给我答案 我需要更高的代码覆盖率。
【问题讨论】:
-
从技术上讲,您可以使用
someFunction() == ()来实现,但它与{ someFunction(); true }一样有意义。 -
函数有什么作用,你想测试什么?
-
你不能(轻松地)测试它,你也不应该这样做。如果该功能仅打印,则不需要单元测试。如果该功能不仅仅用于打印,则将该功能一分为二并测试产生和输出的功能。 - 如果你真的想测试打印的内容,你需要注入一个不同的输出流来比较它的内容。
-
再一次,你不应该测试它。您的业务逻辑不应填充输入/输出。您的逻辑应该只接收它需要的所有参数并返回每个输出。另一个函数 (不会被测试) 将负责执行 IO 并使用逻辑调用该函数。