0

robolectric을 처음 사용하기 때문에 간단한 테스트 만 실행하면됩니다.robolectric을 실행할 때 알 수없는 오류가 발생했습니다.

내가 사용하는 안드로이드 스튜디오 => Gradle을

내 샘플 테스트를 실행하여

@RunWith(RobolectricTestRunner.class) 
public class ExampleTest extends InstrumentationTestCase { 

@Test 
public void test() throws Exception { 
    final int expected = 5; 
    final int reality = 5; 
    assertEquals(expected, reality); 
} 
} 

Gradle을

./gradlew clean test --stacktrace 

나는 예외 가지고

 

    test.ExampleTest > test FAILED 
     java.lang.RuntimeException 
      Caused by: java.lang.NullPointerException 

    1 test completed, 1 failed 
    :app:testDebug FAILED 

    FAILURE: Build failed with an exception. 

    * What went wrong: 
    Execution failed for task ':app:testDebug'. 
    > There were failing tests. See the report at: file:///Users/gburanov/code/mobile/Medoo.Android/app/build/test-report/debug/index.html 

    * Try: 
    Run with --info or --debug option to get more log output. 

    * Exception is: 

    org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:testDebug'. 
     at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69) 
     at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46) 
     at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35) 
     at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64) 
     at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) 
     at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:42) 
     at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) 
     at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53) 
     at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) 
     at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:289) 
     at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.java:79) 
     at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:63) 
     at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51) 
     at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23) 
     at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:86) 
     at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29) 
     at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
     at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23) 
     at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67) 
     at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32) 
     at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61) 
     at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:166) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113) 
     at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64) 
     at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33) 
     at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26) 

어떻게 찾을 수 정말 그렇게 오류의 요지? 널 포인트 예외 어디?

답변

1

Robolectric의 경우 InstrumentationTestCase를 확장하면 안됩니다.

+0

은 그때 무엇을 연장해야합니까? –

+0

아무 것도 확장 할 필요가 없습니다. – vmagro

0
더 실패 세부 사항에 당신의 경로 여야합니다

:

file:///Users/gburanov/code/mobile/Medoo.Android/app/build/test-report/debug/index.html