Detox项目完全卸载指南:清理测试环境残留文件
前言
在使用Detox进行移动端自动化测试时,测试框架会在系统中创建各种临时文件、缓存和设备配置。当需要彻底卸载Detox或清理测试环境时,了解这些文件的存放位置和清理方法非常重要。本文将详细介绍Detox测试框架在系统中留下的各类痕迹及其清理方法。
Detox框架缓存清理
Detox安装后会执行一个后安装脚本,将核心框架文件构建并解压到系统特定目录中。
手动清理方法
在macOS系统中,Detox框架缓存默认存放在用户目录下的Library文件夹中:
rm -rf ~/Library/Detox
使用Detox命令清理
Detox提供了专门的清理命令,可以更安全地移除框架缓存:
detox clean-framework-cache
测试会话状态文件
Detox在每次测试运行时都会创建一些临时状态文件,主要用于设备管理和并发控制:
device.registry.json
- 记录设备使用状态,用于多工作器场景下的设备分配global-context.json.lock
- 防止Detox多实例并发运行的锁文件
这些文件的存储位置因操作系统而异:
- macOS:
~/Library/Detox
- Linux:
- 优先存储在
$XDG_DATA_HOME/Detox
- 若无定义则使用
~/.local/share/Detox
- 优先存储在
- Windows:
- 优先存储在
%LOCALAPPDATA%\data\Detox
- 若无定义则使用
%USERPROFILE%\Application Data\Detox
- 优先存储在
iOS模拟器克隆清理(仅macOS)
为支持多工作器并行测试,Detox会自动克隆iOS模拟器实例。这些克隆实例名称都带有-Detox
后缀。
查找Detox克隆的模拟器
xcrun simctl list | grep "-Detox"
删除特定模拟器
获取模拟器UUID后,可执行删除命令:
xcrun simctl delete <uuid>
临时文件残留清理
异常退出可能导致测试产生的临时文件未被正确清理。
iOS清理
- 删除所有Detox临时文件(日志、截图等):
rm -rf $TMPDIR/*.detox.*
- 彻底重置模拟器状态(会删除所有应用和数据):
xcrun simctl erase <uuid>
Android清理
- 擦除AVD用户数据:
emulator -avd <your_AVD> -wipe-data
- 清理设备上的临时文件:
adb -s <emulator-port> shell rm -rf /sdcard/*_*.*
Detox CLI工具卸载
如果安装了Detox命令行工具,需要单独卸载:
npm uninstall detox-cli --global
最佳实践建议
- 定期清理:建议在完成大规模测试后执行一次全面清理
- 自动化脚本:可将上述命令整合为脚本,方便重复使用
- 环境检查:清理后建议重启相关服务,确保无残留进程
通过以上步骤,您可以彻底清除Detox测试框架在系统中的所有痕迹,为后续测试或卸载提供干净的环境基础。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考