【发布时间】:2016-07-28 13:43:52
【问题描述】:
我正在开发一个成像应用程序。 我想为 Bitmap 相关功能实现单元测试。 我还需要查看输出位图。
我尝试了两种选择:
在
test/java中运行测试,这样我就可以将输出图像转储到我的 Mac 上的一个文件中并手动打开它。但我收到了android.graphics.BitmapFactory not mocked。-
在
androidTest/java中运行测试,因此 BitmapFactory 已完全实现,但是:- 我在尝试使用
adb pull使用mockContext.openFileOutput(fileName, Context.MODE_PRIVATE)拉取文件时得到access denied - 我无法写入外部目录,因为没有使用
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)的 Activity 我无法授予写入权限(编辑:我错了,您可以使用 adb 实用程序授予 READ 和 WRITE 存储空间) - 如果我让它工作,我不知道如何挂钩到 gradle 任务以自动执行拉取命令/或在运行时获得大写访问权限。
- 我在尝试使用
那么如何测试Bitmap相关的代码呢?我没有选择!
【问题讨论】:
-
单元测试应用程序具有与其正在测试的应用程序相同的权限。单元测试应该可以从私有存储中获取照片并将其移动到公共存储中。甚至可以将其传输到文件服务器。
标签: android unit-testing android-gradle-plugin android-permissions android-bitmap