草庐IT

RoboLectric

全部标签

java - 为 Robolectric 的 SharedPreferences 提供测试数据

刚开始使用Robolectric,它似乎正是我所需要的。但是,我在使用SharedPreferences方面遇到了一些障碍。我有两个测试用例Activity需要一个新的/空的sharedPreferencesActivity期望sharedPreferences中已经包含一些数据对于测试用例1,测试按预期通过,一切都很好:)但是,对于测试用例2,我似乎无法找到一种向Robolectric提供一些假数据的好方法,因此Activity能够访问这些假数据。感觉像是一个很常见的用例,但我似乎不知道该怎么做! 最佳答案 发现如何-现在看起来很

android - 不能将 PowerMock 与 Robolectric 和 Gradle (android) 一起使用

我尝试将PowerMock与Robolectric结合使用来模拟我的android项目中的静态方法。我正在使用渐变。但我收到以下异常:Causedby:java.lang.IllegalStateException:PowerMockRulecanonlybeusedwiththesystemclassloaderbutwasloadedbyorg.robolectric.bytecode.AsmInstrumentingClassLoader@7e61b85atorg.powermock.modules.junit4.rule.PowerMockRule.(PowerMockRule

android - 如何使用 robolectric 查找支持库资源?

我正在尝试使用robolectric在我的android应用程序测试中模拟一些东西。可悲的是,在我的项目中包含一个外部库后,测试崩溃了。错误信息是关于未找到某些图书馆资源。java.lang.RuntimeException:CouldnotfindanyresourcefromreferenceResName{com.company.app:style/Theme_AppCompat_Light_NoActionBar}fromstyleStyleData{name='AppTheme_Base',parent='Theme_AppCompat_Light_NoActionBar'}

android - Robolectric 3 GooglePlayServicesNotAvailableException

我刚开始使用Robolectric,想知道如何解析GooglePlayServices。我正在使用Robolectric3RC2,我的gradle如下:build.bradlecompile'com.squareup.okhttp:okhttp:2.3.0'compile'com.google.android.gms:play-services:7.0.0'testCompile("org.robolectric:robolectric:3.0-rc2"){excludemodule:'commons-logging'excludemodule:'httpclient'}testCom

java - 如何在使用 Robolectric 时监视 Activity

我是Android新手,正在使用Robolectric进行单元测试。我面临以下问题。我有一项Activity要测试。主Activity.javapublicclassMainActivityextendsActionBarActivityimplementsNavigationDrawerFragment.NavigationDrawerCallbacks{privateNavigationDrawerFragmentmNavigationDrawerFragment;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){su

android - Robolectric 测试需要等待线程上的某些东西

我的类(class)这样做:publicvoiddoThing(){Doerdoer=newDoer();Threadthread=newThread(doer);thread.start();}'Doer'类是一个内部类:privateclassDoerimplementsRunnable{publicvoidrun(){IntentmyIntent=newIntent(mContext,MyService.class);mContext.startService(myIntent);...Somemorestuff...}这很好用。我需要使用Robolectric对此进行测试。do

android - PowerMock + Robolectric + Dagger2。第一部分

这个问题是从PowerMock+Robolectric+Dagger2的第一部分创建的所以我又有点。对不起。我测试了包含以下内容的自定义View类:安卓用户界面元素一些逻辑静态方法调用dagger2依赖项所以我使用下一个工具进行测试用于模拟UI元素的Robolectric用于逻辑测试的单元测试用于静态方法模拟的PowerMockRobolectric+PowerMock集成问题已知且解决方案已知-https://github.com/robolectric/robolectric/wiki/Using-PowerMock但是有了这个解决方案,dagger2依赖项就会失败。注意代码我的自

android - Robolectric 和 Retrofit - 等待响应

我想测试我的代码是否正确地从API下载数据(使用Retrofit)并将它们显示在RecyclerView中。为此,我创建了一个模拟API的拦截器(基于thissolution)并创建了一个测试(使用Robolectric):@TestpublicvoidlistLoadedCorrectlyTest(){MyListFragmentmyListFragment=newMyListFragment();Bundleargs=newBundle();FragmentTestUtil.startFragment(myListFragment);Robolectric.flushForegro

android - 使用 Picasso 和 Robolectric 的虚假测试失败

我今天刚刚升级到Robolectric2.1.1并集成了Picasso。我现在有两个随机失败的测试用例(其中一个fragment甚至不使用Picasso)。如果我继续运行测试,通常一切都会通过(可能需要尝试几次)。测试@BeforepublicvoidsetUp()throwsException{detailActivity=Robolectric.buildActivity(ActivityUnderTest.class).withIntent(createIntent()).create().start().resume().get();//Note:Theothertestcas

java - Android:如何使用 Robolectric 运行 PIT 突变测试?

如何使用Robolectric和PIT用于测试Android应用程序?借助Robolectric,您可以在JVM中运行Android测试。使用PIT,您可以显示线覆盖率并进行突变测试。对我来说,可以使用Eclipse+Plugins,但没有要求。这是我目前尝试过的:我有一个Android项目,我们称它为MyProject。我现在想使用Robolectric在JVM中测试MyProject和PIT.因此,我创建了另一个名为MyTest的项目,并成功运行了Robolectric测试,正如robolectricquickstart中所述。.这就是my.app.tests.MyActivity