问题标签 [robolectric-gradle-plugin]

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.

0 投票
1 回答
475 浏览

android - Android Gradle 插件无法识别 SourceSet 'robolectric'

更新至 Android Studio 3.1 及其对应的 gradle。我在尝试同步时收到一条消息“Android Gradle 插件无法识别 SourceSet 'robolectric'。也许你拼错了什么?”。

这是 gradle 文件中的当前 sourceSet:

0 投票
1 回答
354 浏览

android - Robolectric 4.0.2 测试未在 gradle 3.2.1 中运行,出现 NoSuchMethodError: setUseLegacyResources(Z)V

我已将我的 Gradle 插件版本从 2.3.3 升级到 3.2.1,但我的 robolectric 测试开始失败。所以我将 robolectric 版本升级到 4.0.2,并在Documentation中进行了给定的更改。

但是我的所有测试仍然无法执行此错误:

这是我迄今为止尝试过的,但没有任何效果。

1. https://github.com/robolectric/robolectric/issues/4271

2. Robolectric:setupActivity() 中的 NullPointerException

3. https://github.com/robolectric/robolectric/issues/2579

我已经提交了问题

任何帮助,将不胜感激。

0 投票
1 回答
1112 浏览

android - android studio robolectric 测试无覆盖

首先,我知道这个问题似乎是重复的。然而,其他问题都不是最近的,仍然可以工作。我试过了。

问题如下:

当使用带有 jacoco 作为覆盖生成器的 Android Studio 的内部“覆盖运行”功能时,我没有得到任何使用 RobolectricRunner 进行测试的覆盖。

我的 testOptions 部分在我的应用程序级别 build.gradle 中:

我在用着

我已经尝试了很多东西,甚至能够在覆盖范围内运行我的测试,如果它们完全是 robolectric 的话,但它仍然保持在 0%。

目前我没有对 jacoco 的任何具体引用,所以我认为我正在使用默认的 Android Studio 版本。如果有人能指出如何找到该版本,我将不胜感激。

如果您需要任何其他信息,我很乐意提供。

0 投票
4 回答
3446 浏览

gradle - 如何解决重复的 gradle 依赖问题

我试图用 robolectric 测试我的代码。问题是它有重复的引用。例如

我已使用gradel 神器app:dependencies获得以下报告。这里是重要的部分:

如何解决参考错误?在我看来,robolectric 在不同的依赖项中具有相同的类?

我使用以下构建脚本:应用插件:'com.android.application'

如何解决?

github 上的问题已打开:https ://github.com/robolectric/robolectric/issues/5235

0 投票
5 回答
10819 浏览

java - 如何将 Java 9 添加到 Android Studio?

我正在使用 Robolectric 库,它的最新版本 v4.3.1 需要 Java 9 才能运行。我试图将 JRE 指向编辑配置,但即使我已经安装了 Java 9,我也没有在下拉列表中找到它。如果有人可以解释一下,那将非常有帮助!

在此处输入图像描述

请检查已安装的 Java 9。

在此处输入图像描述

0 投票
1 回答
25 浏览

unit-testing - AndroidStudio 不会自动导入 RoboLectric 对象

正确设置 gradle 后,例如@RunWith(RobolectricTestRunner::class)在我的测试类顶部添加时,当我单击时,Andtoid Studio 不会自动导入该类Alt+Enter

当我手动输入import org.robolectric.RobolectricTestRunner时,我看到该类已被识别。

我已经完成了Invalidate Caches/Restart ..

我正在使用KotlinAndroidStudio 4.0robolectric:4.3.1

0 投票
0 回答
90 浏览

android - 如何在 ShadowPackageManager 中添加 PackageInfo?

我想在 ShadowPackageManager 中添加带有 versionCode 的 PackageInfo,以检查 packageInfo 中提供的 versionCode 是否小于、大于或等于单元测试用例中提供的 versionCode。

当我尝试获取版本代码进行测试时,它会返回我在 gradle 文件中给出的 versionCode。如何嘲笑这个?

依赖和 Gradle 版本