2015-12-13 109 views
10

我正在關注這篇文章,http://blog.danlew.net/2015/11/02/sharing-code-between-unit-tests-and-instrumentation-tests-on-android/,分享代碼,但如何共享一個資產?,就像一個夾具文件?,我想嘲笑一個API響應,所以我有一個JSON文件來做,但我嘗試這樣的:https://gist.github.com/nebiros/91a68aaf6995fa635507如何在Android的單元測試和儀器測試之間共享資源?

在單元測試,這個工程:

ClassLoader.getSystemResourceAsStream("some_response.json"); 

但在Android的Intrumentation測試,這不,我在哪裏可以把那些夾具文件?

+0

任何解決方案:

android { sourceSets { String sharedTestJavaDir = 'src/sharedTest/java' test { java.srcDirs += [sharedTestJavaDir] } androidTest { java.srcDirs += [sharedTestJavaDir] resources.srcDirs += ['src/test/resources'] } } } 
  • 訪問夾具這樣的文件從androidTest ENV?我面臨同樣的問題 – Nazneen

  • +0

    @Nazneen我發佈了我找到的解決方案。 – nebiros

    回答

    7

    我發現這種方式,共享夾具文件從testandroidTest

    • 您的夾具文件添加到resources文件夾test之一,這裏的:src/test/resources
    • 添加test資源文件夾androidTestresources.srcDirs += ['src/test/resources'],這裏有一個例子:this.getClass().getClassLoader().getResourceAsStream(filename);

    +1

    謝謝。這工作一切正常 – Nazneen