RestTemplate
アプリで REST サービス呼び出しを行うためにAndroid spring を使用しています。REST サービス呼び出しのモックを含む android Instrumentation テストを追加しました。私のすべてのテストは、Androidスタジオから実行している間は正常に実行されていますが、ターミナルから実行している間、テストはSpringモッククラスをロードできませんでした
./gradlew clean :app:connectedDebugAndroidTest
build.gradle に対するスプリング テストの依存関係
androidTestCompile("org.springframework:spring-test:3.2.8.RELEASE")
compile
の代わりに に変更するandroidTestCompile
と、Android テストは端末から正常に実行されます。私は自分の製品 APK にこの依存関係を望んでいないので、助けていただければ幸いです。
これはテスト開始時のログです
08-05 00:04:12.585 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.asm.commons.JSRInlinerAdapter 08-05 00:04:12.587 22274-22302/com.libin .androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.asm.commons.TryCatchBlockSorter 08-05 00:04:12.593 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework. cglib.transform.AbstractProcessTask 08-05 00:04:12.593 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.cglib.transform.AbstractTransformTask 08-05 00:04:12.603 22274- 22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.core.convert.support.ConvertingPropertyEditorAdapter 08-05 00:04:12.610 22274-22302/com.libin.androiduitesting E/TestLoader:クラスが見つかりませんでした: org.springframework.core.io.ResourceEditor 08-05 00:04:12.611 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.core.io.support. ResourceArrayPropertyEditor 08-05 00:04:12.617 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.http.MockHttpInputMessage 08-05 00:04:12.618 22274-22302/com。 libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.http.MockHttpOutputMessage 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework .mock.http.client.MockClientHttpRequest 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.http.client.MockClientHttpResponse 08-05 00:04:12.618 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.jndi.ExpectedLookupTemplate 08-05 00:04:12.619 22274-22302/com. libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.jndi.SimpleNamingContext 08-05 00:04:12.619 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework .mock.jndi.SimpleNamingContextBuilder 08-05 00:04:12.619 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.DelegatingServletInputStream 08-05 00:04:12.619 22274 -22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.DelegatingServletOutputStream 08-05 00:04:12.620 22274-22302/com.libin。androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockBodyContent 08-05 00:04:12.620 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock .web.MockExpressionEvaluator 08-05 00:04:12.620 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockFilterChain 08-05 00:04:12.620 22274-22302 /com.libin.androiduitesting E/TestLoader: クラスが見つかりません: org.springframework.mock.web.MockFilterConfig 08-05 00:04:12.620 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりません: E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockHttpServletResponse 08-05 00:04 :12.621 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockHttpSession 08-05 00:04:12.621 22274-22302/com.libin.androiduitesting E/TestLoader: 可能性がありますクラスが見つかりません: org.springframework.mock.web.MockJspWriter 08-05 00:04:12.621 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりません: org.springframework.mock.web.MockMultipartFile 08- 05 00:04:12.621 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockMultipartHttpServletRequest 08-05 00:04:12.622 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockPageContext 08-05 00:04:12.622 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.ウェブ。MockRequestDispatcher 08-05 00:04:12.623 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockServletConfig 08-05 00:04:12.623 22274-22302/com。 libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.MockServletContext 08-05 00:04:12.628 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework .mock.web.PassThroughFilterChain 08-05 00:04:12.628 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.portlet.MockActionRequest 08-05 00:04: 12.629 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web.portlet.MockActionResponse 08-05 00:04:12.629 22274-22302/com.libin.androiduitesting E/TestLoader :クラスが見つかりませんでした: org.springframework.mock.web.portlet.MockBaseURL 08-05 00:04:12.629 22274-22302/com.libin.androiduitesting E/TestLoader: クラスが見つかりませんでした: org.springframework.mock.web. portlet.MockCacheControl 08-05 00:04:12.630 22274-22302/com.libin.androiduitesting E/AndroidRuntime: 致命的な例外: Instr: android.support.test.runner.AndroidJUnitRunner プロセス: com.libin.androiduitesting、PID: 22274 java .lang.NoClassDefFoundError: org.springframework.mock.web.portlet.MockClientDataRequest at java.lang.Class.android.support.test.internal.runner.TestLoader.doLoadClass(TestLoader.java:92) の java.lang.Class.forName(Class.java:324) の classForName(Native Method)。 android.support.test.internal.runner.TestRequestBuilder.loadClassesFromClassPath(TestRequestBuilder.java:801) の runner.TestLoader.loadIfTest(TestLoader.java:113) android.support.test.internal.runner.TestRequestBuilder.build(TestRequestBuilder.ジャワ:747) android.support.test.runner.AndroidJUnitRunner.buildRequest(AndroidJUnitRunner.java:354) で android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:260) で android.app.Instrumentation$InstrumentationThread.run (Instrumentation.java:1879)java:260) android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1879) でjava:260) android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1879) で