Json$Default 无法转换为 kotlinx.serialization.json.Json

Json$Default cannot be cast to kotlinx.serialization.json.Json

androidTest 中的 kotlinx.serialization 和 运行ning 测试有问题。

库版本:

org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.1
org.jetbrains.kotlin:kotlin-stdlib:1.4.10

我的 Json 实例:

Json(Json.Default) {
    serializersModule = SerializersModule {
        // serializers here
    }
    coerceInputValues = true
    ignoreUnknownKeys = true
    isLenient = true
}

UI 测试方案

存根 json -> json 使用 kotlinx.serialization 反序列化。json -> 显示屏幕

如果我 运行 UI 在 androidTest 文件夹中测试,我会得到异常

java.lang.ClassCastException: kotlinx.serialization.json.Json$Default cannot be cast to kotlinx.serialization.json.Json

你知道如何解决这个问题吗?

UPD

另一种变体。不默认使用

Json {
    serializersModule = SerializersModule {
        // serializers here
    }
    coerceInputValues = true
    ignoreUnknownKeys = true
    isLenient = true
}

异常

No static method Json$default(Lkotlinx/serialization/json/Json;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lkotlinx/serialization/json/Json

问题出在 allure 框架上

  1. 在这里发布https://github.com/allure-framework/allure-kotlin/issues/38
  2. 修复这里https://github.com/allure-framework/allure-kotlin/pull/37