问题标签 [robolectric]
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.
android - 在 Android 设备上运行 Robolectric 测试的最佳方式
我有一个 Robolectric 测试项目设置,但我还想在我的设备上运行这些测试,以检查我没有被 JVM 与 Dalvik 实现差异所困扰。
与 robolectric 测试不同,我不会经常运行这些测试。我担心的是维护测试套件并验证实际设备功能的努力很少。
最好的方法是什么?
我目前拥有的:
我的 robolectric 测试项目作为测试用例 TestPackage。我使用测试用例 TestRoboOnAndroid 创建了一个 Android 测试项目。它创建一个 TestPackage 并为 TestPackage 中的每个测试提供一个测试。
现在,每次我向我的 robolectric 套件添加测试时,我都需要手动将它添加到我的设备套件中。有没有办法通过反射自动做到这一点?
junit.framework
此外,Robolectric 使用 JUnit 4(默认情况下)而 Android 使用 JUnit 3。所以我必须使用 JUnit 3 样式(从而不是导入)编写我所有的 Robolectric 测试org.junit
。
android - 使用 robolectric 时如何访问测试类中的资源
我已经制作了一个值的文本文件,我想用它在 res/raw 中进行测试
我想在测试中使用它们
我正在使用 robolectric
访问这些值的最佳方法是什么?
谢谢
android - 如何让 Robolectric 与 Android-Release Archetype 一起工作?
我正在尝试让 Robolectric 与位于https://github.com/akquinet/android-archetypes/wiki/Android-release-archetype
的 Android-release-archetype 一起工作
到目前为止我没有运气
1. 我添加了对 POM 的 Robolectric 依赖。
2.我使用了“干净安装”的目标
然后我得到了这样的错误:
有人可以尝试让这个原型与 maven 一起工作并告诉我该怎么做吗?这是我的测试课:
这是我的父母POM:
这是子 POM:
谢谢
android - 使用 Maven surefire 插件运行 Robolectric 测试时出现 ClassNotFoundException
我已经使用 Android Maven 集成在 Eclipse 中设置了一个项目,并使用 Robolectric 进行了一些测试。
当我在 Eclipse 中部署它们时,测试运行良好。但是,当我尝试使用Maven“安装”目标(这实际上是我在本地 Maven 存储库中需要的库)构建项目时,它在这些相同的测试中失败。
日志显示以下错误:
其中 (package) 当然是我的主包的名称。这是我的 POM 的相关部分:
如您所见,我尝试将“genDirectory”选项添加到 Maven Android 插件。但无济于事。
为了让surefire插件“看到” R类,我缺少什么?
还有一件事:我的代码实际上并未引用 R 类。
unit-testing - 如何在 Gradle 中指定类路径排序
我需要在 testRuntime 配置中控制 jar 的顺序。
我必须确保 robolectric-xxjar 出现在 android.jar 之前,否则我会得到可怕的 RuntimeException("Stub!")。
我怎么做?
android - 如何使用 Robolectric 获取当前活动?
假设我有一个活动 A,它从其onCreate()
方法中启动另一个活动 B,期待结果。
如何使用 Robolectric 获得活动 B?
android - 自定义阴影对象在 Robolectric 中究竟是如何工作的?
如果我为我的 Activity 编写自定义 Shadow,并将其注册到 RobolectricTestRunner,框架是否会在启动时使用我的自定义 Shadow 拦截 Activity?
谢谢。
android - 在 Robolectric 中测试 SQLite 数据库
我正在尝试在我的 Android 应用程序中使用 Robolectric 测试一个简单的 SQLite 数据库。我输入了一些值,但是在读取它们时返回 0 行。
我正在使用 SQLiteOpenHelper 类来访问数据库。
在 robolectric 之外调试代码时,这可以按预期工作。我做错了什么还是无法使用 Robolectric 测试 SQlite 数据库?
android - 如果存在 AdMob 视图,Robolectric 无法扩展布局文件,有什么解决方法吗?
这是我启用 Robolectric 的 JUnit 测试类的一个片段:
运行我的测试时,该行mActivity.onCreate(null)
会引发以下异常:
languageselection.xml
如果我从我的布局文件中注释掉以下视图,它工作得非常好:
问题:对此有什么好的解决方法?我不想仅仅出于测试目的而禁用/启用广告。我不是在测试广告,但我不想为了测试其他元素(例如按钮)而删除它们。
谢谢
android - 在 Robolectric 中模拟单击菜单项
在 Robolectric 中模拟按钮点击相当简单:
但是,我似乎无法弄清楚如何对菜单项做同样的事情。我在 中创建了一个菜单Activity.onCreateOptionsMenu
,如何模拟单击其中一项?