cas*_*oso 1 junit android android-service android-assets servicetestcase
我正在为Android服务实现编写JUnit测试代码,我必须使用sdcard上复制的一些文件初始化测试.我的班级签名是这样的:
public class ImageServiceTest extends ServiceTestCase<ImageService>
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用此提示从资产中复制文件,但getAssets()方法需要扩展Activity类.
public void copyAssets() {
AssetManager assetManager = getAssets();
...
}
Run Code Online (Sandbox Code Playgroud)
那么..我如何将文件从资产复制到SD卡到setUp在android中的junit测试?
提前致谢.
PS:
'getSystemContext().getAssets();','getContext().getAssets();','getApplicationContext();' 返回Service Project上下文,而不是测试项目上下文.
现在我正在尝试使用Instrumentation,但它需要一个Activity,我正在使用一个Service项目.我正在寻找如何在没有活动的情况下使用Instrumentation ...
好的,这很简单.
我的主要问题是从测试项目中获取上下文以访问其资产文件夹.但getContext()返回主项目上下文.因此,为了获得测试项目上下文,我创建了一个传递测试包的新上下文:
Context mTestAppContext = getContext().createPackageContext("com.project.myapp",
Context.CONTEXT_IGNORE_SECURITY);
Run Code Online (Sandbox Code Playgroud)
:-)
| 归档时间: |
|
| 查看次数: |
3079 次 |
| 最近记录: |