如何在Kotlin上测试数据类?

时间:2019-06-07 08:35:09

标签: unit-testing testing kotlin junit data-class

我的Kotlin项目中有数据类,用于JSON Rest响应。 示例:

data class WeatherResponse(val city: String, val temperature: Double, val humidity: Double)

要满足代码覆盖范围的限制,我想为上述数据类编写一些测试。

哪些单元测试对Kotlin数据类有意义?

我想创建一个WeatherResponse对象和一个相应的JSON String(来自服务器的响应),将该String解析为WeatherResponse对象并进行比较?

1 个答案:

答案 0 :(得分:0)

Kotlin数据类的目的是避免样板代码,并认为如果getter和setter中没有逻辑,则将它们键入没有价值。

同样,如果它们是自动生成的,则不应尝试对标准的getter和setter进行单元测试,因为您基本上是在测试没有价值的编译器本身。

对于您提到的JSON,您正在有效地测试将对象序列化为JSON的一切。如果您想检查(例如)此序列化的特定配置,那么这可能会有一些用处,但是我还是要假设您可以假设存在数据类提供的功能。

通过正确的代码覆盖率验证,您无需覆盖Kotlin代码中不存在的行。例如,从0.8.2 JaCoCo has features which filter out generated code开始。