1. 08 9月, 2026 11 次提交
  2. 07 9月, 2026 15 次提交
  3. 02 9月, 2026 3 次提交
  4. 01 9月, 2026 9 次提交
    • 陈泽健's avatar
    • 陈泽健's avatar
      feat(performance): 混合场景 mix 每虚拟用户独立登录(CSV账号各自token + 登录重登替换) · 59948f7c
      陈泽健 提交于
      - 后端 HttpClient 新增 login_with_credentials(username,password) 与 _extract_token 静态方法
        - 复用 captcha uuid + SHA256 加密 + 签名;不写入 _tokens 缓存(token 由 executor 管理)
      - 执行引擎 per-VU 状态:_vu_tokens Dict[int,str] + _vu_tokens_lock + _vu_login_failed
        - _ensure_vu_token 异步幂等(run_in_executor 包裹同步登录),失败记入 _vu_login_failed
        - _resolve_csv_credentials 按 global_thread_idx 分配 CSV 行(idx % len 循环复用)
        - _mix_worker 启动各自登录;登录接口进随机池命中后替换该 VU 自己的 token
        - _send_request 新增 bearer_token 可选参 + 返回 Optional[str](登录 2xx 提取新 token)
        - _build_headers bearer_token 优先于 self._token;登录目标 bearer_token="" 签名且无 Authorization
        - _is_login_target 支持 url_override(识别随机池中的登录接口)
        - _run_mix 校验:CSV 未启用/缺 username/password 列/账号数 < 并发数 → 拒绝执行
        - execute() per_vu_login 时跳过共享预登录
      - Model/Schema 增加 per_vu_login 字段(默认 False)+ _ensure_columns 自动迁移
      - 前端 types perVuLogin + TaskList.vue「每虚拟用户独立登录」开关(仅 mix 显示)
      - 单测 TestPerVuLogin 13 条(各自token/重登替换/失败处理/CSV校验/共享回归)
      - 已部署 5.60(含 performance_tasks.per_vu_login 自动迁移);端到端由用户手动验证
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      59948f7c
    • 陈泽健's avatar
      docs(ui-automation): 精简 HANDOFF 文档至会话48核心内容(755行→66行) · 63ed9c69
      陈泽健 提交于
      - 删除会话47~36历史章节、时间线表格、关键约束/配置/启动运维/文档索引、老待办清单
      - 保留会话48双档(sut-explore缺口补齐 + 定时任务看门狗修复)核心记录
      Co-Authored-By: 's avatarClaude Fable 5 <noreply@anthropic.com>
      63ed9c69
    • 陈泽健's avatar
      feat(performance): 混合场景 mix 权重随机调度 + 执行时长膨胀修复 · 545ee9b4
      陈泽健 提交于
      - 执行引擎新增 _run_mix/_mix_worker:concurrency 个 worker 协程
        每次迭代按权重 random.choices 选接口发请求,前置登录复用 token
      - ScenarioApiConfig 新增 weight 字段(默认 1,weight=0 不参与随机),
        scenario_type 支持 mix;权重归一化边界健壮(sum<=0 回退均匀)
      - 前端 TaskList 新增「混合场景(Mix)」下拉 + 权重编辑列 + 序列化回填;
        ReportPanel mix 蓝色标签 + 接口明细表
      - 修复执行时长膨胀(实测 120s→285.7s 约 2.4×):目标机 SSH 同步采样
        阻塞事件循环,改 loop.run_in_executor 丢线程池;TARGET_MONITOR_ENABLED
        默认改 false。复验 durationActual=123.96s,请求比例≈权重(34/23/43%)零 4xx
      - 新增 mix 单测 11 条(权重归一化/冒烟)
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      545ee9b4
    • 陈泽健's avatar
      docs(performance): 混合场景压测 PRD 与执行计划 + 5.60 部署验收记录 · 35a0c281
      陈泽健 提交于
      新增 _PRD_混合场景压测.md 需求文档与 _PRD_混合场景压测_计划执行.md
      (含 6.1 短时长端到端验证 PASS、6.2 执行时长膨胀根因修复复验、6.3 前端部署验证);
      HANDOFF_性能测试.md 更新至 2026-09-01 会话进度。
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      35a0c281
    • 陈泽健's avatar
      feat(ui-automation): sut-explore 补齐会议运维+待办巡检缺口用例 8/8 通过 · 720bf764
      陈泽健 提交于
      - 盘点确认 7 个缺口功能,生成 8 个可执行 UI 用例写入 SQLite(generate_gap_cases.py 幂等)
      - 会议运维 6 用例 navigate 直达 + Tab 切换断言一次全绿
      - 待办巡检 2 用例:monitor 直达 URL 内层路由竞态定位(整页加载后固定落设备列表页、
        外层 monitor= hash/navPayload 均无法切 Checklist、_ensure_micro_app_loaded 误判就绪)
        → 改走首页「巡检报表」入口点击 [id="data_list.inspect_report"] 绕过,100% 稳定
      - 探测脚本沉淀:probe_gap_modules(_v2~v4)/probe_gap_meeting_tabs/probe_monitor_checklist_rerun
        /probe_sut_home_entries/probe_overview_modules/probe_funcenter
      - HANDOFF_UI自动化.md 记录会话48 全流程
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      720bf764
    • 陈泽健's avatar
    • 陈泽健's avatar
    • 陈泽健's avatar
      fix(定时任务): 看门狗失败执行也生成报告 + 单用例超时兜底 + Chromium 崩溃恢复 · 80bbb6ac
      陈泽健 提交于
      A 修复(看门狗失败执行也生成报告):
      - scheduler_service.py 新增 _has_any_case_results 辅助函数
      - UI/安全两条路径报告条件 run_ok -> run_ok or _has_any_case_results
      - 解决 5.44 每日任务连续 4 次看门狗失败、报告目录无一文件
      
      B 修复(定位并消除卡死点):
      - B1: case_results 写入 start_time(由实际耗时回推),支持定位卡死用例
      - B2: 用例级硬超时兜底(_case_start_mono + case_remaining_seconds,
            步骤/等待/微应用轮询均受用例剩余时间约束,防单用例无限挂起)
      - B3: Chromium 崩溃自动恢复(崩溃标记检测 + 重建页面复用 context
            保留登录态,失败步骤起重试,每用例最多恢复一次)
      
      部署配套:
      - deploy/docker-compose.yml: app 容器日志轮转 50m x 5
      - deploy_fix_560.py: 增加 scheduler_service.py / execution_service.py 上传
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      80bbb6ac
  5. 31 8月, 2026 2 次提交