问题标签 [mockk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unit-testing - Kotlin-mockk 链式调用
我正在尝试使用 Kotlin 中的 mockk 库在我的单元测试中执行链式调用。下面是我的代码:
而我的实现代码:
我正在尝试存根内部调用(sayHello()),但出现未解决的引用错误。根据链调用的 Mockk 文档,它说这应该是有效的。
我试过清理和重建(但遇到编译错误)。尝试重新启动 IDE。尝试使缓存无效并重新启动。
我有什么遗漏/做错了吗?
参考:
android - 如何比较或验证不覆盖 equals 方法的对象?
我在 Kotlin (Android) 中使用 mockk 进行单元测试。
我想验证一个函数是否被调用:
在这种情况下Param2
,生成的 Java 类不会覆盖equals
方法,因此验证总是失败。
我尝试使用match
,但失败消息根本没有帮助。
有没有更好或更正确的方法来做到这一点?
android - 将 MockK settings.properties 文件放在 Android 项目中的什么位置?
我们正在使用 MockK 对我们的 Android 项目进行单元测试。由于我们几乎总是使用mockk(relayed=true)
我们希望在 docssettings.properties
中将其设置为默认值。
它说:“在资源中创建 io/mockk/settings.properties 文件。”
好的,所以我认为把它放在这里是个好主意:src/main/res/io/mockk/settings.properties
. 不幸的是,它不起作用。如果我删除relaxed=true
单个模拟中的显式,所有测试都会失败。
那么,我在哪里实际放置设置文件?
android - 如何用 mockk 模拟密封类?
我正在尝试模拟一个看起来像这样的密封类:
我希望能够做到以下几点:
但不幸的是,当我运行它时,它失败并出现以下错误:
io.mockk.MockKException:每个 { ... } 块内缺少调用。
我究竟做错了什么?
kotlin - 相当于 doReturn(x).when(y)... 在 mockk 中?
我正在寻找一个相当于 doReturn(...).when(...).*
我正在编写一些涉及大量系统类的单元测试(测试合同),因此需要拦截我无法控制的方法并返回一些回调(代码中的方法最终会返回)。在模拟中,我可以做类似 doReturn(...).when(...).*
我无法在 mockK 中找到类似的东西。似乎 every{} 总是在回答或返回之前运行该块。
android - 尝试将此 Mockito 测试转换为 Mockk 会导致错误
从 Mockito 到 Mockk 的以下转换存在问题。
所以我有这个
试着把它变成这个
给我以下错误
io.mockk.MockKException:没有找到答案:Observer(#4).onChanged(Loading(value=true))
android - 协程单元测试 Mockk java.lang.AbstractMethodError at kotlinx.coroutines.CoroutineContextKt.newCoroutineContext
我想在 viewmodal 中对一个方法进行单元测试,但每次我都失败了,并且浏览了许多网站和堆栈答案,但没有一个有帮助。我只是想在我的 viewmodal 中测试一个方法,即 loadWeatherForeCast
我浏览了以下链接, 在单元测试中调用 Dispatchers.setMain() 时出错
https://android.jlelse.eu/mastering-coroutines-android-unit-tests-8bc0d082bf15
https://proandroiddev.com/mocking-coroutines-7024073a8c09
}
}
kotlin - Kotlin:如何使用 JUnit5 和 Mockk 清理或重置模拟
在某些情况下,需要清理或重置测试用例之间的模拟。
将 Kotling 与 JUnit5 和 Mockk 一起使用,第一种方法应该是这样的:
@BeforeEach
但是,与其在每个测试用例上声明模拟并初始化 SUT,不如使用类似这样的东西更清晰(可能不是更快) :
有没有更好(和更快)的方法来声明模拟和 sut 一次并在每次测试中重置或清除所有模拟?
android - 在 Android 中模拟私有对象
这是否可以使用 mockk 库进行模拟。
我有一堂课(删除了一些部分,试图简化问题)
我试图基本上模拟私有类 Fetcher 所做的工作。我以为我可以这样做:
但这并不能模拟私有实例。有没有办法模拟私有实例?我知道,如果我为私有 Fetcher 创建了一个接口,而是将其公开并注入类型,我可以模拟它。但是设置管理器的外部消费者不需要知道获取的逻辑。我不确定是否可以使用 mockk 模拟私有对象。
android - 如何测试演示者 MVP Android
我试图了解我应该如何测试我的应用程序,我仍在学习mockito
我也看到mockk
但无法使其工作,这是我的Presenter
我应该如何测试这个主持人?我必须添加所有这些方法吗?
我试图这样做,mockito
但我也可以使用mockk
.
有些人告诉我,我必须做一些事情Schedulers
并使用它,trampoline
但我不清楚你们中的任何人都可以提供一个例子或解释一下吗?