在android中,如何在单元测试和仪器测试之间共享资源?
我在下面这篇文章中分享代码,但是如何共享资产?比如fixture文件?我想模拟api响应,所以我有一个JSON文件来实现,但我尝试了以下方法: 在单元测试中,这起作用:在android中,如何在单元测试和仪器测试之间共享资源?,android,unit-testing,junit,tdd,Android,Unit Testing,Junit,Tdd,我在下面这篇文章中分享代码,但是如何共享资产?比如fixture文件?我想模拟api响应,所以我有一个JSON文件来实现,但我尝试了以下方法: 在单元测试中,这起作用: ClassLoader.getSystemResourceAsStream("some_response.json"); 但是在Android设备测试中,它没有,我可以把那些设备文件放在哪里?我找到了这种方法,从test到androidTest共享设备文件: 将夹具文件添加到testone的resources文件夹中,此处:
ClassLoader.getSystemResourceAsStream("some_response.json");
但是在Android设备测试中,它没有,我可以把那些设备文件放在哪里?我找到了这种方法,从
test
到androidTest
共享设备文件:
- 将夹具文件添加到
one的test
文件夹中,此处:resources
src/test/resources
- 将
resources文件夹添加到test
,androidTest
,下面是一个示例:resources.srcDirs+=['src/test/resources']
android { sourceSets { String sharedTestJavaDir = 'src/sharedTest/java' test { java.srcDirs += [sharedTestJavaDir] } androidTest { java.srcDirs += [sharedTestJavaDir] resources.srcDirs += ['src/test/resources'] } } }
- 通过以下方式从
env访问夹具文件:androidTest
this.getClass().getClassLoader().getResourceAsStream(文件名)代码>