android - Kotlin 多平台 : How to mock objects in a unit test for iOS

标签 android ios unit-testing kotlin kotlin-multiplatform

我正在开发适用于 iOS/Android 的 Kotlin 多平台 (KMP) 库。我已经为 JVM 编写了一些单元测试,我使用 MockK创建 spy 和模拟,但 MockK 还不完全支持 Kotlin 原生。

因此,我想知道从事 KMP 项目的其他人如何为 iOS 平台编写单元测试。一个例子将非常感激。

最佳答案

目前,MockK 不支持 Kotlin/Native 或 Kotlin/JS。然而,两者都被列为重要项目on the project backlog :

这是一个巨大的挑战,因为模拟库严重依赖反射等语言功能,而 Kotlin 多平台尚未完全支持这些功能(如果没有针对特定平台的大量解决方法,甚至可能无法支持)。

这并不妨碍您编写自定义模拟类并验证您在其中设置的状态,当然,其中的测试将能够在所有平台上运行。

关于android - Kotlin 多平台 : How to mock objects in a unit test for iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58320492/

相关文章:

android - 在 API 1.6 上部署 VerifyError

ios - UISearchBarSearchField BackgroundView 颜色

unit-testing - MS 测试 "Method not found: System.String"错误

c++ - 如何决定为基于规则的系统创建哪些单元测试

ruby-on-rails - 如何在 Rails 测试数据库中创建 mysql 函数?

android - 仅在安装了支持的 Android 应用程序时才将 HTML 重定向到自定义协议(protocol)

android - 如何使用 HttpURLConnection 发布数据

ios - xcode重复项目中的文件

ios - 将十进制度数转换为十进制度分 (DDM)

java - Android:为什么我不能在 onCreate 方法之外的按钮上调用 setOnClickListener 方法?