fix: E2E标题输入框时序问题 - 点击switch后等待输入框渲染 #1299

Closed
xiaoxia wants to merge 1 commits from fix/e2e-title-input-timing into develop
Owner

问题

Staging E2E 测试在标题步骤超时失败。测试代码点击 AI 模式 switch 后立即尝试 fill 输入框,但输入框是条件渲染的(只在 !aiAutoSelect 时渲染),存在时序问题。

修复

在点击 switch 后,添加 expect().toBeVisible() 等待输入框出现(5秒超时),确保 DOM 更新完成后再执行 fill 操作。

改动

  • apps/web/e2e/core-generation.spec.ts: 点击 switch 后等待输入框可见
## 问题 Staging E2E 测试在标题步骤超时失败。测试代码点击 AI 模式 switch 后立即尝试 fill 输入框,但输入框是条件渲染的(只在 `!aiAutoSelect` 时渲染),存在时序问题。 ## 修复 在点击 switch 后,添加 `expect().toBeVisible()` 等待输入框出现(5秒超时),确保 DOM 更新完成后再执行 fill 操作。 ## 改动 - `apps/web/e2e/core-generation.spec.ts`: 点击 switch 后等待输入框可见
xiaoxia added 1 commit 2026-08-08 12:21:04 +08:00
fix: E2E标题输入框时序问题 - 点击switch后等待输入框渲染
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 41s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 57s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m17s
AI Code Review / AI Code Review (pull_request) Successful in 1m42s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m51s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m57s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m47s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 2m58s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 5m15s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 3m37s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 3m25s
CI/CD Pipeline / CI Gate (pull_request) Successful in 12s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 44s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 1m2s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 939h0m42s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 939h0m43s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 939h0m44s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 939h0m44s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 939h0m48s
CI/CD Pipeline / PR Build API Image (pull_request) Failing after 939h4m11s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 939h4m25s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 939h5m57s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 939h5m57s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 939h5m58s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 939h34m6s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 939h34m7s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 939h37m28s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 939h39m24s
f31262d8e0
问题:AI模式切换到手动模式后,输入框是条件渲染的,立即fill会超时
修复:点击switch后添加expect().toBeVisible()等待输入框出现(5秒超时)
Collaborator

【阻塞级判定】

  • 是否存在阻塞级问题:否
  • 阻塞级问题数量:0 个

📊 审查概览

  • 整体评价:通过
  • 建议级问题数量:0 个

🔴 阻塞级问题(必须修复)

无

💡 改进建议(不阻塞合并)

无

✅ 良好实践

  1. 修复竞态条件:在点击开关导致 DOM 结构发生变化(条件渲染)后,显式添加了 expect(...).toBeVisible() 等待逻辑。这是 Playwright 最佳实践,能有效避免因元素未及时渲染导致的“Element not found”或测试不稳定问题。
  2. 注释清晰:添加了准确的中文注释说明了等待的原因,提高了代码的可维护性。

🤖 由 AI 代码审查机器人自动生成 | 2026-08-08 04:22:47 | 模型:

### 【阻塞级判定】 - 是否存在阻塞级问题:否 - 阻塞级问题数量:0 个 ### 📊 审查概览 - 整体评价:通过 - 建议级问题数量:0 个 ### 🔴 阻塞级问题(必须修复) 无 ### 💡 改进建议(不阻塞合并) 无 ### ✅ 良好实践 1. **修复竞态条件**:在点击开关导致 DOM 结构发生变化(条件渲染)后,显式添加了 `expect(...).toBeVisible()` 等待逻辑。这是 Playwright 最佳实践,能有效避免因元素未及时渲染导致的“Element not found”或测试不稳定问题。 2. **注释清晰**:添加了准确的中文注释说明了等待的原因,提高了代码的可维护性。 --- <sub>🤖 由 AI 代码审查机器人自动生成 | 2026-08-08 04:22:47 | 模型: </sub> <!-- AI_CODE_REVIEW_AUTO_COMMENT -->

🚀 预览环境已部署

项目 详情
PR号 #1299
预览链接 https://pr-1299.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #1299 | | 预览链接 | [https://pr-1299.preview.xiaoxiajianji.com](https://pr-1299.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
xiaoxia closed this pull request 2026-08-08 12:30:05 +08:00

🗑️ 预览环境已清理

PR #1299 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #1299 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。
Some checks are pending
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 41s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 57s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m17s
AI Code Review / AI Code Review (pull_request) Successful in 1m42s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m51s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m57s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m47s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 2m58s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 5m15s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 3m37s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 3m25s
CI/CD Pipeline / CI Gate (pull_request) Successful in 12s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 44s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 1m2s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 939h0m42s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 939h0m43s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 939h0m44s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 939h0m44s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 939h0m48s
CI/CD Pipeline / PR Build API Image (pull_request) Failing after 939h4m11s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 939h4m25s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 939h5m57s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 939h5m57s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 939h5m58s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 939h6m3s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 939h34m6s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 939h34m7s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 939h37m28s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 939h39m24s

Pull request closed

Sign in to join this conversation.