我的Kotlin项目中有数据类,用于JSON Rest响应。 示例:
data class WeatherResponse(val city: String, val temperature: Double, val humidity: Double)
要满足代码覆盖范围的限制,我想为上述数据类编写一些测试。
哪些单元测试对Kotlin数据类有意义?
我想创建一个WeatherResponse对象和一个相应的JSON String(来自服务器的响应),将该String解析为WeatherResponse对象并进行比较?
答案 0 :(得分:0)
Kotlin数据类的目的是避免样板代码,并认为如果getter和setter中没有逻辑,则将它们键入没有价值。
同样,如果它们是自动生成的,则不应尝试对标准的getter和setter进行单元测试,因为您基本上是在测试没有价值的编译器本身。
对于您提到的JSON,您正在有效地测试将对象序列化为JSON的一切。如果您想检查(例如)此序列化的特定配置,那么这可能会有一些用处,但是我还是要假设您可以假设存在数据类提供的功能。
通过正确的代码覆盖率验证,您无需覆盖Kotlin代码中不存在的行。例如,从0.8.2 JaCoCo has features which filter out generated code开始。