从Kotlinx-协程测试使用类时出错

时间:2019-06-24 13:49:01

标签: android kotlin kotlin-coroutines

似乎 kotlinx-coroutines-test 依赖项对我不起作用,因为我无法访问诸如TestCoroutineDispatchersetMain(),{{1 }}等。我一直关注此doc,但是尽管添加了gradle依赖项,但仍无法访问成员。我尝试重建项目并使缓存无效并重新启动,但似乎没有任何效果。我也尝试过做resetMain(),但还是没有运气。

build.gradle

androidExtensions {experimental = true}

我在哪里错了?

5 个答案:

答案 0 :(得分:3)

将您的库版本更改为1.3.2,而不是1.3.0-M1,如下所示:

testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.3.2'

并确保您的测试位于unit test文件夹中的test,而不是instrumented test文件夹中的androidTest

答案 1 :(得分:1)

用实现代替testImplementation帮了我大忙。

答案 2 :(得分:0)

只需添加:-

testImplementation(“ org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.0”)

资料来源:-此处yigit提供了解决方案link和类似的工作方式。

答案 3 :(得分:0)

尝试添加core作为对测试的依赖。它为我解决了这个问题。

testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.1.0")

答案 4 :(得分:0)

@Squti 的解决方案对我有用,即将尝试从 src 目录中的包导入 TestCoroutineDispatcher 的类移动到 test 目录中的包。