我是一个MVP架构,在一个演示者中,我想测试一种从Bitmap
内部到手机检索Uri
的方法
方法沿着这些方向
public Bitmap getBitmap(Context context, Uri uri) {
...
try {
final InputStream input = context.getContentResolver().openInputStream(uri);
bitmap = BitmapFactory.decodeStream(input, null, options);
input.close();
}
...
}
现在我对新的Android测试套件并不熟悉,而且我不想使用(如果可能的话)像Robolectric这样的外部库,所以我对如何继续进行操作有点不知所措。 ..
我的想法是去instrumentation test
,因为我依赖于Android组件Context
@Test
public void getScreenshot() {
final Uri uriBitmap = Uri.parse("testFile.jpg");
final Context context = InstrumentationRegistry.getTargetContext();
final Bitmap retrieved = presenter.getBitmap(context, uriBitmap);
assertEquals(retrieved, preInjectedTestFile.jpg)
}
然后我不知道我怎么能注射"测试期间文件系统中的testFile.jpg ... 此外,我不确定我使用的上下文是否与托管应用程序或测试版本相同,最好不要使用#34;官方"应用程序内存