android GTS-- com.google.android.xts.placement.UiPlacementTest fail

本文介绍如何正确配置Google Play Store在默认主屏的位置,包括Google搜索小部件、Google应用集合文件夹及Play Store图标的具体放置要求。不正确的配置会导致GTS测试失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    Google要求将GooglePlayStore应用配置在defaul home screen,且default home screen只能配置Gooogle Search Widget,PlayStore,Google Colletion Folder具体如下:

The default home screen features the following placements:

1. Google Search Widget

2. Google Collection folder containing the Core GMS app icons

3. Play Store app icon

com.google.android.xts.placement.UiPlacementTest是检测GooglePlayStore在默认主屏配置正确,否则跑GTS时,该项会fail,如下:

com.google.android.xts.placement.UiPlacementTest
-- testPlayStore
fail
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.test.uiautomator.UiObject2.click()' on a null object reference at com.google.android.xts.placement.UiPlacementTest.tryElement(UiPlacementTest.java:73)


将GooglePlayStore配置在主屏即可pass。

Caused by: MobileHarnessException: Failed to unzip file /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip to dir /tmp/olc_server_temp_files/session_6f0a63ff-ea2c-4f5b-9df6-49f000b42fd4/job_tmp_xts-tradefed-test-job_db105dd1-4158-428b-a2e2-7cb7541c73d9/test_5394de8f-68c8-4c07-86cb-9cd56e048be1/android/xts/mcts [MH|UNDETERMINED|LOCAL_FILE_UNZIP_ERROR|30123] [MobileHarnessException],Caused by: com.google.devtools.mobileharness.shared.util.command.CommandFailureException: Failed command with exit_code=9 and success_exit_codes=[0], result=[code=9, out=[ End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive. note: /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip may be a plain executable, not an archive unzip: cannot find zipfile directory in one of /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip or /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip.zip, and cannot find /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip.ZIP, period. Archive: /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip ], err=[]], command=[unzip -o /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip] [MH|UNDETERMINED|COMMAND_EXEC_FAIL|39998] [CommandFailureException]
03-21
<think>好的,我现在需要分析用户提供的CTS测试失败的错误信息,并给出清晰的解决方案。首先,用户遇到的错误是解压ZIP文件失败,错误码是LOCAL_FILE_UNZIP_ERROR(30123)和COMMAND_EXEC_FAIL(39998)。我需要先理解错误信息的具体内容。 首先,错误信息指出解压失败,原因是End-of-central-directory签名未找到,说明ZIP文件可能损坏或不完整。同时,系统怀疑该文件可能是一个普通可执行文件而不是压缩包,或者属于多卷压缩文件的一部分。此外,解压命令返回了退出码9,通常表示解压过程中遇到了严重问题,比如文件损坏或格式错误。 接下来,我需要考虑可能的原因。首先是ZIP文件本身的问题,如下载不完整、文件损坏、或者服务器提供的文件有问题。其次是解压工具的问题,比如使用的unzip版本过旧或有bug。另外,磁盘空间不足也可能导致解压失败,或者在解压过程中权限不足,无法写入目标目录。还有可能文件路径过长,或者解压命令的参数不正确。 然后,我需要验证这些可能的原因。用户应该检查ZIP文件的完整性,比如使用校验和或者重新下载文件。检查磁盘空间是否足够,使用df -h命令查看。确认解压工具是否正常工作,尝试手动解压看是否报错。检查目标目录的权限,确保有写入权限。同时,查看系统日志是否有其他相关错误信息。 解决方案方面,首先建议用户重新下载ZIP文件,确保下载完整。然后检查文件校验和,确保与官方一致。清理磁盘空间,确保目标目录有足够空间。检查并更新unzip工具到最新版本。手动尝试解压,确认问题是否依然存在。调整解压命令参数,比如使用绝对路径或简化路径。如果问题持续,可能需要联系文件提供方确认文件完整性。 最后,总结步骤,确保用户能一步步排查问题,并提供示例命令帮助操作。同时提醒用户如果所有方法无效,联系支持团队并提供详细日志和错误信息。确保回答结构清晰,分点明确,便于用户理解和操作。</think>--- ### 问题分析:CTS测试解压失败(ERROR: LOCAL_FILE_UNZIP_ERROR, COMMAND_EXEC_FAIL) 根据报错信息,CTS测试失败的原因是 **解压MCTS文件时发生严重错误**,具体涉及文件路径 `/root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip`。以下是关键错误解析与解决方案: --- #### 1. **直接原因** 错误类型为 **`LOCAL_FILE_UNZIP_ERROR`(错误码 `30123`)** 和 **`COMMAND_EXEC_FAIL`(错误码 `39998`)**,直接表现为解压命令 `unzip` 执行失败(退出码 `9`)。具体错误包括: - **ZIP文件损坏或不完整**:报错 `End-of-central-directory signature not found` 表明 ZIP 文件结构损坏。 - **文件类型不符**:系统怀疑该文件可能是普通可执行文件(非 ZIP 格式)或属于多分卷压缩包的一部分。 - **解压路径问题**:解压工具无法在指定路径找到有效的 ZIP 文件。 --- #### 2. **深层原因排查** | **可能原因** | **验证方法** | **解决方案** | |----------------------|----------------------------------------------------------------------------|-----------------------------------------------------------------------------| | **ZIP文件损坏** | 检查文件完整性(如 `unzip -t` 或对比哈希值)。 | - 删除旧文件并重新下载<br>- 联系服务器确认文件是否正常。 | | **多分卷压缩包** | 检查文件名是否符合分卷压缩命名规则(如 `.zip.001`, `.zip.002`)。 | 使用 `zip` 或 `7z` 完整合并分卷后再解压。 | | **磁盘空间不足** | 检查 `/tmp` 或目标目录的剩余空间(`df -h`)。 | 清理临时文件或扩展磁盘容量。 | | **解压工具版本问题** | 检查 `unzip` 版本(`unzip -v`),确认是否支持当前 ZIP 格式。 | 更新 `unzip` 到最新版本或使用其他工具(如 `7zip`)。 | | **权限问题** | 确认对 `/root/xts` 和 `/tmp` 目录有读写权限。 | - 以 `sudo` 权限运行测试<br>- 调整目录权限(`chmod -R 755 /目标路径`)。 | | **文件路径异常** | 检查路径是否包含特殊字符(如空格或中文)。 | 简化路径名称或改用纯英文短路径。 | --- #### 3. **操作建议** 1. **验证 ZIP 文件完整性** ```bash # 检查 ZIP 文件是否可读 file /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip # 测试解压(不实际解压) unzip -t android-mcts-permission.zip # 对比哈希值(需官方提供正确值) sha256sum android-mcts-permission.zip ``` 2. **手动解压测试** ```bash # 尝试强制解压(忽略警告) unzip -o -j android-mcts-permission.zip -d /tmp/test_unzip # 使用 7zip 解压(兼容性更强) 7z x android-mcts-permission.zip -o/tmp/test_unzip ``` 3. **清理并重试** ```bash # 删除旧文件 rm -rf /root/xts/mcts_dynamic_download/android/xts/mcts/35/arm64/android-mcts-permission.zip # 重启服务释放资源 systemctl restart mobileharness ``` --- #### 4. **扩展说明** - **退出码 `9`**:`unzip` 命令的常见错误码,通常表示 ZIP 文件损坏、格式不兼容或权限不足。 - **错误码 `30123`**:MobileHarness 框架定义的本地文件解压错误,需结合日志分析具体阶段(如下载后文件是否被篡改)。 - **临时目录问题**:检查 `/tmp/olc_server_temp_files` 是否被其他进程占用或提前清理。 --- 若上述方法无效,建议: 1. 提供完整的测试日志(包括文件下载阶段日志)。 2. 联系 Google MCTS 支持团队,提交文件哈希值和错误详情。 3. 尝试在其他机器或纯净环境中复现问题,排除环境干扰。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值