草庐IT

Robolectric-Tests

全部标签

java - 带有 Robolectric 的 Mockito : "ClassCastException occurred when creating the proxy"

在将Mockito与Robolectric一起使用时,我开始在Mockito中遇到一个奇怪的ClassCastException。当我不使用Robolectricrunner运行相同的测试时,一切正常,没有抛出异常。这是堆栈跟踪:org.mockito.exceptions.base.MockitoException:ClassCastExceptionoccurredwhencreatingtheproxy.Youmightexperienceclassloadingissues,disablingtheObjenesiscache*might*help(seeMockitoConf

java - 尝试将 AndroidJUnit4 与标准 JUnit 运行器和委托(delegate)运行器一起使用 'org.robolectric.RobolectricTestRunner' 无法加载

我正在使用espresso运行一些测试,但我不知道为什么roboelectric包含在这个错误中,因为测试仅针对espresso,下面是错误:java.lang.Exception:AttemptedtouseAndroidJUnit4withstandardJUnitrunneranddelegaterunner'org.robolectric.RobolectricTestRunner'couldnotbeloaded.Checkyourbuildconfiguration.atandroid.support.test.runner.AndroidJUnit4.loadRunner

android - Robolectric - screen_action_bar.xml 第 #-1 行(抱歉,尚未实现): Error inflating class <unknown>

我正在使用Robolectric,但在创建Activity时出现以下错误。我正在使用2.3-Snapshot-androidTestCompile('org.robolectric:robolectric:2.3-SNAPSHOT')android.view.InflateException:XMLfilejar:/Users/user/.m2/repository/org/robolectric/android-all/4.3_r2-robolectric-0/android-all-4.3_r2-robolectric-0.jar!/res/layout/screen_action

android - 使用 Robolectric 测试 ActionBarActivity 时出错

我正在使用Robolectric测试我的应用程序中的Activity。该Activity扩展了ActionBarActivity。当我测试Activity时出现错误:IllegalStateException:YouneedtouseaTheme.AppCompattheme(ordescendant)withthisactivity.我的测试环境是这样的:AndroidStudio0.8.6Robolectric2.4-快照支持-v4库版本20.0appcompat-v7版本20.0现在开始上课。Activity:publicclassFilterActivityextendsAct

java - 使用 Robolectric 测试 Android 库

我创建了一个可以在Android环境中使用的库。目前它包含PlainOldGroovyObjects,没有Android依赖项。对这些POGO的测试运行没有问题。为了扩展库的功能,我创建了继承自Android类或依赖于它们的类,我也想测试它们。当然,测试应该是库的一部分,而不应该作为包含库的Android应用程序项目的一部分来实现。我知道可以在Robolectric的帮助下测试应用程序它工作得很好,但我认为如果没有背后的整个Android应用程序,就不可能使用它。有没有办法用Android依赖项和Robolectric测试库?我正在使用AndroidStudio1.2。

安卓 Gradle Jacoco : offline instrumentation for integration tests

我们正在构建一个使用Appium测试的Android应用程序。现在我想看看我们的Appium测试的测试覆盖率。我认为这是可能的,因为Jacoco支持离线检测(http://www.eclemma.org/jacoco/trunk/doc/offline.html)。甚至jacocogradle插件的文档也说:WhilealltasksoftypeTestareautomaticallyenhancedtoprovidecoverageinformationwhenthejavapluginhasbeenapplied,anytaskthatimplementsJavaForkOptio

android - Robolectric - 如何清理消息 : "WARNING: unknown service autofill"

在使用Robolectric进行测试期间,我总是在控制台(无LogCat)中收到一条警告消息,内容为:“警告:未知服务自动填充”。有人知道如何清理它吗?提前致谢。 最佳答案 您可以将sdk版本设置为25。因此,测试将针对api级别25运行。应该在未来的robolectric版本中删除/实现警告。要设置sdk版本,请参阅:http://robolectric.org/configuring/ 关于android-Robolectric-如何清理消息:"WARNING:unknownserv

java - Resources$NotFoundException 调用 Robolectric.buildActivity() 时

我在AndroidStudio中使用Robolectric3.0RC3进行单元测试。每次运行测试时,我都会收到ResourceNotFoundException。请帮我解决这个问题。build.gradledependencies{testCompile'junit:junit:4.12'compilefileTree(dir:'libs',include:['*.jar'])compile'com.android.support:appcompat-v7:22.0.0'testCompile'org.mockito:mockito-core:1.9.5'testCompile'org

android - 带有 map 自定义 fragment 的 Robolectric 3.0 InflateException

我看到很多话题都在谈论这个问题,例如这个answer关于快照版本。这仍然是必要的,因为当我尝试设置我的Activity时,我得到:android.view.InflateException:XMLfile/Users/billey_b/android/android/app/build/intermediates/res/merged/targetARTVm/debug/layout/activity_preorder.xmlline#-1(sorry,notyetimplemented):Errorinflatingclassfragmentandroid.view.InflateE

android - 如何将 Active Android 与内存数据库结合使用以使用 Robolectric 进行单元测试?

正如标题所说。我知道robolectric中提供的内存数据库有限。有什么方法可以将它与ActiveAndroid一起使用吗?在默认配置下,似乎在运行所有测试后清除数据库,但不是针对每个测试。 最佳答案 我用的是greenDao——但是原理是一样的。我的应用程序类初始化我的数据库(数据库有一个名称)。对于我的测试,我将Application子类化(它允许Robolectric调用此版本)并覆盖获取数据库名称的方法-并返回null。这意味着我创建了一个内存数据库。由于应用程序创建是设置的一部分,因此每个测试都会使用一个新的内存数据库。p