如何在androidTest中创建测试资源并为测试APK授予运行时权限?
测试文件读取-验证-复制功能的实操思路
先明确一个容易踩的误区:请注意,这里给测试APK授予权限,并非给你要测试的目标应用授权,别搞混了,不然权限配置错了会直接影响测试结果的准确性。
我的应用核心逻辑是这样的:从系统Download目录(/sdcard/download)读取文件,先完成有效性校验,把符合要求的文件复制到应用私有存储目录(/data/data/com.package.myapp/files/),方便后续按需调用使用。
为了全面覆盖这个功能的测试场景,我会在Download目录里准备两类测试文件:
- 已知有效文件:这类文件完全符合应用的格式要求、校验规则(比如正确的MD5值、标准文件头标识等),用来验证正常流程下,文件的读取、验证、复制全链路是否能顺畅执行
- 已知无效文件:我会细分几种典型的无效场景,比如格式不匹配的文件(比如把txt改后缀伪装成apk)、内容损坏的文件、校验值不符的文件、空文件等,用来测试应用是否能准确识别无效文件,并且不会执行后续的复制操作,同时确认错误处理逻辑是否合理(比如有没有给用户清晰提示、日志里有没有正确记录错误原因)
另外分享几个实操小技巧:
- 给测试文件命名时带上明确标识,比如
valid_image_01.png、invalid_corrupted_02.docx,这样测试时一眼就能区分,方便快速核对结果 - 测试过程中可以用ADB查看应用日志,比如执行
adb logcat | grep com.package.myapp,跟踪文件处理的每一步,确认验证逻辑是否按预期工作 - 测试完成后,还可以通过ADB进入应用私有存储目录检查结果:执行
adb shell run-as com.package.myapp ls files/,看看有效文件是不是都复制过来了,无效文件有没有被误复制
内容的提问来源于stack exchange,提问作者copolii
相关产品推荐
相关产品推荐

