草庐IT

RoboLectric

全部标签

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。

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

android - 加载 JNI 库的应用程序对象上的 Robolectric 坦克。我可以获得解决方法吗?

我的Android应用程序的Application对象加载了一个JNI库,而Robolectric似乎不喜欢那样。当我去运行我的测试Robolectric时,我得到了这个堆栈跟踪:java.lang.UnsatisfiedLinkError:nocperryinc-jniinjava.library.pathatjava.lang.ClassLoader.loadLibrary(ClassLoader.java:1758)atjava.lang.Runtime.loadLibrary0(Runtime.java:823)atjava.lang.System.loadLibrary(Sy

android - 如何使用 Robolectric 测试 Application 类?

我正在尝试使用Robolectric测试Parse.com的推送通知。由于必须在Application类中完成初始化,因此我需要对其进行测试。到目前为止,该应用程序在模拟器上运行良好,但我无法使用Robolectric对其进行测试。我的应用类的onCreate:publicvoidonCreate(){super.onCreate();//AddyourinitializationcodehereParse.initialize(this,APP_KEY,CLIENT_ID);//SpecifyanActivitytohandleallpushesbydefault.PushServi

android - Gradle、Robolectric 和 Espresso

有没有人在使用Gradle(AndroidStudio)构建时成功地让Robolectric和Espresso(一起)工作?我已经让Robolectric在AndroidStudio中工作,这主要归功于PeterFriese的帖子http://www.peterfriese.de/android-testing-with-robolectric/,但由于instrumentRunner/instrumentTest冲突,我不确定如何集成Espresso。理想情况下,我的目录结构如下:|--src└──main(applicationsource-exists)└──test(Robol

android - 有人在 IntelliJ 上使用没有 Maven 的 Robolectric 吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我能找到的所有使用Robolectric的示例似乎都是基于Maven的。有人不使用Maven吗?如果是这样,我真的很想了解您的IntelliJ项目设置。看完这篇文章android-unit-test-approaches将纯junit、robolectric和android测试框架测试相结合,采用分层方法对android项目进行单元测试似乎是明智的。如果有人在使用或不使用Maven的情况下