Android集成测试从Uri读取位图

时间:2017-11-01 10:22:38

标签: android testing integration-testing

我是一个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;官方"应用程序内存

0 个答案:

没有答案