草庐IT

Robolectric-Tests

全部标签

android - Robolectric 和 Android Studio 1.1.0 和库测试

我无法让我的Robolectric单元测试在实验性AS1.1单元测试变体下运行。我得到的错误如下所示;java.lang.NoClassDefFoundError:com/my/app/R$stringatcom.my.app.MoneyFormatter.formatDealMessage(MoneyFormatter.java:63)...Causedby:java.lang.ClassNotFoundException:com.my.app.R$stringatjava.net.URLClassLoader$1.run(URLClassLoader.java:366)atjava

android - Robolectric:使用 ViewHolder 模式测试 ListView 会导致 NullPointerException

我有一个ListActivity,它的适配器实现了ViewHolder模式。适配器和viewholder:privateclassPlaceAdapterextendsArrayAdapter{finalintviewResourceId;publicPlaceAdapter(Contextcontext,inttextViewResourceId,Listobjects){super(context,textViewResourceId,objects);viewResourceId=textViewResourceId;}@OverridepublicViewgetView(int

android - Robolectric 不使用 ShadowWebView 作为扩展 WebView 的类的父类(super class)。 MustOverrideException 代替

我试图让Robolectric2.1与我的项目一起工作,并在我的WebView子类尝试在其WebSettings上调用setDatabasePath时收到MustOverrideException。我有一个自定义应用程序类,它试图在onCreate中创建WebView子类的实例。作为WebView构造函数的一部分,它尝试设置数据库路径。我本以为,由于getSettings是从WebView调用的,所以该调用会真正命中ShadowWebView,它应该返回一个不会抛出这些异常的TestWebSettings对象。相反,它似乎只是调用普通的WebSettings.getSettings并返

android - Robolectric 与 test.R.java

我在API21有一个使用robolectric3.0的库项目,带有com.android.tools.build:gradle:1.3.1。我想使用测试资源(好像在src/androidTest/res/...下),即com.mypackage.test.R.java(如反对用于生产的com.mypackage.R.java)在robolectric测试中。我目前拥有的:目录结构为src/main/javarestest/java//noresherebecauseit'snotpickedupandroidTest/res//pickedupbyandroidTestbuildvar

java - Robolectric 给我一个 java.lang.IllegalArgumentException : INTERNET permission is required

我正在为现有应用改造单元测试。当我运行这个简单的单元测试时importorg.junit.Test;importorg.junit.runner.RunWith;importorg.robolectric.RobolectricGradleTestRunner;importorg.robolectric.annotation.Config;importstaticjunit.framework.Assert.assertTrue;@RunWith(RobolectricGradleTestRunner.class)@Config(constants=BuildConfig.class,

android - 使用 robolectric 检查是否在 UI-Thread 上调用了方法

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestion这里有人知道如何编写测试(或者最好有一个示例)来检查是否在UI线程上调用了一个方法吗?

android - facebook screenshot-tests-for-android 在制作截图时抛出空指针

在我的测试中@LargeTest@RunWith(AndroidJUnit4.class)publicclassSimpleActicityTest{@RulepublicActivityTestRuleactivityActivityTestRule=newActivityTestRule(MainActivity.class);@TestpublicvoidtestActivity()throwsException{Activitya=activityActivityTestRule.getActivity();Screenshot.snapActivity(activity).s

android - 使用 robolectric 测试改造 2,未调用回调

我正在尝试使用服务器为我的restfulapi创建单元测试。经过一些研究,我想出了一个使用robolectric和OkHttpMockWebServer的解决方案。.这是我的(简化示例):API接口(interface):publicinterfaceServerApi{@POST("echo")Callecho(@BodyEchoRequestDatadata);}响应/请求数据对象:publicclassEchoRequestData{privatefinalStringvalue;publicEchoRequestData(finalStringvalue){this.value

java - Robolectric - AndroidStudio - 找不到参数的方法 testCompile()

我正在尝试在AndroidStudio中使用Robolectric和AssertJ运行一些基本的单元测试。我已使用testCompile方法将Robolectric、AssertJ和JUnit添加到我的build.gradle文件中。但是,当我尝试实际运行单元测试时,我继续收到一条错误消息“找不到方法testCompile()”。我已经尝试用androidTestCompile替换testCompile方法,如前所述here,但是找不到要导入到我的SampleTest.java类中的Robolectric、AssertJ和JUnit类。我还创建了一个非常基本的示例应用程序,看看我是否能

使用 Robolectric : java. lang.InstantiationException 的 Android 库 JUnit 测试

尝试使用Robolectric在Android库项目上运行JUnit测试时出现以下错误:java.lang.RuntimeException:java.lang.InstantiationExceptionatcom.xtremelabs.robolectric.ApplicationResolver.newApplicationInstance(ApplicationResolver.java:56)atcom.xtremelabs.robolectric.ApplicationResolver.resolveApplication(ApplicationResolver.java: