You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Instrumentation无法在第二设备启动,并行测试遇文件占用异常

多设备并行执行不同Instrumentation测试时文件占用异常问题

近期在一台模拟器上运行Instrumentation测试的同时,尝试在第二台设备并行启动另一项测试,触发如下构建失败异常:

FAILURE: Build failed with an exception.
What went wrong: Execution failed for task ':app:connectedDebugAndroidTest'.
java.nio.file.FileSystemException: D:\Android\MyApp\app\build\outputs\androidTest-results\connected\name_of_the_first_device\logcat-MyApp.TestClassName-TestName.txt:
The process cannot access the file because it is being used by another process

问题核心:构建进程尝试访问第一台设备专属目录下的日志文件,但该文件已被占用。实际操作中使用的是另一台设备,且运行的是不同测试,理论上不该出现跨设备的文件访问冲突。

操作目的:将大型测试拆分到多设备并行执行,以加快测试完成速度,设备性能强劲,不存在资源不足问题。

背景:数月前该操作可正常执行,推测是Gradle或相关Android构建工具更新导致,但期间安装了多个更新,无法定位具体版本问题。

更新补充信息

  • 近期切换使用Hilt,因此创建了自定义TestRunner:由于带有@HiltApplication注解的Application无法用于测试,需创建测试用自定义Application,并通过该自定义TestRunner运行测试。
  • 使用Android Studio中的「Select Multiple Devices」下拉框选择多设备运行相同测试时,可正常执行,无文件占用异常。

内容的提问来源于stack exchange,提问作者Aorlinn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:20:31