1. 03 8月, 2026 9 次提交
  2. 29 7月, 2026 4 次提交
  3. 28 7月, 2026 2 次提交
    • 陈泽健's avatar
      fix(executor): 修复容器内 HeadlessChrome UA 导致登录失败——伪装 UA 隐藏自动化特征 · fd2c2f4d
      陈泽健 提交于
      - playwright_executor.py: 启动参数加 --disable-blink-features=AutomationControlled / --disable-automation
      - new_context() 伪装为正常桌面 Chrome UA、locale=zh-CN、timezone=Asia/Shanghai
      - add_init_script 隐藏 navigator.webdriver(双保险)
      - 容器内验证:do_login() 返回 True,2 步用例 11.81s 执行通过 
      - HANDOFF.md: 同步更新 P1 已解决状态
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      fd2c2f4d
    • 陈泽健's avatar
      feat(deploy): V2部署架构升级 — 合一容器+MySQL · 4cff19b6
      陈泽健 提交于
      完成服务器部署架构升级(V1三容器→V2双容器),解决代码更新需重建镜像、前端无法热更新、SQLite并发锁等问题。
      
      变更内容:
      - 新建合一Dockerfile(仅装环境,代码volume挂载)
      - 重写docker-compose.yml(2服务:app+mysql)
      - 改造main.py(StaticFiles挂载前端+SPA路由回退)
      - 改造database.py(区分SQLite/MySQL连接参数)
      - 7个model ID字段String(32)→String(64)(适配MySQL长度校验)
      - 新增aiomysql+cryptography依赖
      - 编写migrate_sqlite_to_mysql.py(断点续传+外键处理)
      - 新增init.sql、deploy.sh、.env.example
      - 删除旧Dockerfile.backend/frontend
      - 新增PRD需求文档、执行计划、部署方案、HANDOFF_V2文档
      - CLAUDE.md新增MySQL踩坑记录#10-#13
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      4cff19b6
  4. 27 7月, 2026 6 次提交
  5. 24 7月, 2026 1 次提交
  6. 23 7月, 2026 3 次提交
    • 陈泽健's avatar
      feat(ui-test): 补充8个用例较少页面的深层交互用例(233→241) · 2b735bfb
      陈泽健 提交于
      - 会议服务统计:筛选器验证+图表验证
      - 消息通知:筛选器验证+操作按钮验证(修复.el-table超时→body选择器)
      - 设备列表:表格数据验证+刷新验证
      - 远程控制:表格数据验证+刷新验证
      - P0验证4个代表性用例全部通过
      - 新增踩坑记录#26:消息通知页面无.el-table
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      2b735bfb
    • 陈泽健's avatar
      docs(ui-test): 更新UI自动化交接文档-模块筛选器修复完成+批量执行进度 · 6b4c6322
      陈泽健 提交于
      - 模块筛选器case_type参数已验证生效(ui=16模块, security=12模块)
      - 记录旧后端进程未关闭的踩坑经验(netstat PID与实际不一致)
      - 更新批量执行验证状态(233用例执行中)
      - 新增踩坑记录#23-#25
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      6b4c6322
    • 陈泽健's avatar
      feat(ui-test): 新增73个深层交互用例+模块筛选器case_type过滤 · 5669460a
      陈泽健 提交于
      - 后端 module_service/routers 新增 case_type 参数,通过 sec_ 前缀区分 UI/安全测试模块
      - 前端 Cases.vue/Recorder.vue loadModules 传递 case_type='ui' 过滤安全测试模块
      - 前端 api/modules.ts list() 新增 case_type 参数
      - 新增功能中心深层交互用例创建脚本 create_deep_cases_func_center_v3.py(73个用例)
      - 新增PRD需求文档:功能中心深层交互用例补充 + 模块筛选器显示安全测试模块
      - 新增执行计划文档:对应两份PRD的计划执行文档
      - 更新HANDOFF交接文档
      - 数据库新增73个深层交互用例(202→275)
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      5669460a
  7. 22 7月, 2026 8 次提交
    • 陈泽健's avatar
      feat(ui-test): 前端适配模块父子层级结构-树形选择器 · 13a044a6
      陈泽健 提交于
      - TypeScript 类型定义增加 parentId/children 字段
      - API 层新增 buildModuleTree() 树形构建函数
      - Cases.vue 筛选区和编辑弹窗模块选择器改为 el-tree-select
      - Recorder.vue 模块选择器改为 el-tree-select
      - Modules.vue 编辑弹窗支持选择父模块,含循环引用防护
      - 新增 PRD 需求文档和执行计划文档
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      13a044a6
    • 陈泽健's avatar
      feat(ui-test): 补充空壳父级模块用例+模块表支持parent_id层级 · b9ba786b
      陈泽健 提交于
      主要变更:
      1. 后端模块表支持父子层级(parent_id)
         - models/module.py: 新增 parent_id 字段 + parent/children 自引用关系
         - schemas/module.py: ModuleCreate/Update/Response 增加 parent_id/children
         - routers/modules.py: 响应构造增加 parent_id
         - services/module_service.py: create/update 支持 parent_id
         - database.py: 增加 parent_id 列自动迁移
      
      2. 执行器断言健壮性优化
         - playwright_executor.py: element_count_min/count 空值处理
      
      3. 新增19个空壳父级模块用例(用例总数161→180)
         - create_func_center_cases.py: 功能中心+会议运维+资产管理+会务管理+维护工单(10个)
         - create_jikong_cases.py: 集控控制-设备列表+远程控制(4个)
         - create_remaining_module_cases.py: 信息发布+信息管理+其他分类(5个)
      
      4. setup_parent_modules.py: 建立父子模块层级关系
      
      5. HANDOFF文档更新
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      b9ba786b
    • 陈泽健's avatar
      docs(ui-test): 更新UI自动化交接文档-记录6个失败用例修复结果 · d9810420
      陈泽健 提交于
      - 通过率从76%提升到100%
      - 新增踩坑记录:el-select点击、菜单遮挡、页面不可用
      - 更新用例统计
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      d9810420
    • 陈泽健's avatar
      fix(ui-test): 修复6个失败用例步骤定义+执行器点击回退优化 · c016b1c8
      陈泽健 提交于
      执行器优化:
      - _do_click 添加4级点击回退策略:普通点击->force点击->iframe点击->JS点击
      - _do_wait 快速检查+均分超时优化,避免多选择器等待时间过长
      
      用例步骤修复:
      - 管理看板-表格数据验证:改断言为检查表格存在性(被测系统数据为空)
      - 会议统计-下拉筛选验证:优化select选择器,添加.el-input__inner/.el-select回退
      - 历史记录-RSE-表格数据验证:添加滚动步骤+JS点击回退处理菜单遮挡
      - 通知统计-筛选器验证:改断言为检查.el-radio等多种筛选器元素
      - 会议概览/会议室概览用例替换为管理看板-日期筛选/分页验证(原页面不可用)
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      c016b1c8
    • 陈泽健's avatar
      72170d64
    • 陈泽健's avatar
      feat(security): 前端报告中心适配安全报告+补充API3/4/6/7/9/10用例 · 4c3301ee
      陈泽健 提交于
      - Reports.vue 新增安全测试报告 Markdown 渲染(marked库)
      - 报告列表增加类型标签区分安全测试/UI自动化
      - 安全报告弹窗支持下载和主题适配
      - 新增 API3/4/6/7/9/10 共 18 个安全测试用例(总计 42 个)
      - 更新 HANDOFF 交接文档
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      4c3301ee
    • 陈泽健's avatar
      feat(security): 安全测试报告生成服务+格式对齐参考实现 · 68b2fbbf
      陈泽健 提交于
      新增 security_report_service.py,生成7章节Markdown报告:
      - 执行概要 + OWASP覆盖矩阵(5列,critical合并到high)
      - 漏洞详情(按风险等级排序,含请求/响应/修复建议)
      - 已验证安全项(按OWASP模块分组)
      - 风险评估与修复建议
      - 已知安全问题清单
      - 历史漏洞回归验证(五.五章节,6列表格)
      - 华为安全红线合规性检查(五.六章节)
      - 测试环境与工具(含服务器架构信息)
      - 参考资料(Z盘路径)
      
      执行完成自动生成报告,路径存入execution.config.report_path
      新增报告查看/下载API + 前端API封装
      格式对齐参考实现report_generator.py
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      68b2fbbf
    • 陈泽健's avatar
      fix(executor): 修复FastAPI端点执行Playwright报asyncio检测错误 · a9074f8c
      陈泽健 提交于
      - playwright_executor.py: 在工作线程中设置 asyncio.set_event_loop(None) 绕过 Playwright 的 asyncio 事件循环检测
      - execution_service.py: 优化 run_all_cases_sync 日志输出,清理调试 print 语句
      - CLAUDE.md: 新增踩坑记录 #9,更新 Playwright 正确模式第 5 条
      - HANDOFF.md: 更新状态为已修复,重构文档结构
      
      根因:Playwright sync_playwright().start() 内部使用 asyncio.get_running_loop() 检测,
      在 FastAPI run_in_executor 工作线程中需将事件循环设为 None 才能绕过检测
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      a9074f8c
  8. 21 7月, 2026 3 次提交
    • 陈泽健's avatar
      feat(security): 新增API接口安全测试模块 · 001a68a9
      陈泽健 提交于
      后端安全测试引擎(与PlaywrightExecutor解耦,基于requests+AES-CBC签名):
      - 新增 SecurityConfig/VulnerabilityResult ORM 与 Pydantic schema
      - 新增 HttpClient(AES-CBC签名算法,X-RANDOM/X-TIMESTAMP/X-SIGN)
      - 新增 AuthHelper 多账号登录辅助
      - 新增 SecurityExecutor 安全测试执行引擎
      - 新增 security_service 业务逻辑层与 knowledge_base 知识库
      - 新增 /api/security 路由(11个接口)
      
      执行调度分流修复:
      - execution_service.run_execution 按 case_type 分流,security 走专用 _run_security_execution
      - 安全用例不再误交给 PlaywrightExecutor 解析 dict steps
      - test_case schema steps 字段支持 Union(list/dict)
      
      前端适配:
      - 新增 types/security.ts 与 api/security.ts
      - Cases.vue 支持安全用例风险等级标签与详情弹窗
      - Execution.vue 执行弹窗分流 security/UI 执行逻辑
      
      配套脚本与文档:
      - create_security_cases / create_default_security_config / test_security_e2e
      - PRD 需求文档、计划执行文档、报告设计文档
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      001a68a9
    • 陈泽健's avatar
      feat(executor): 执行器新增iframe遍历支持+多窗口开发规范 · d3587c55
      陈泽健 提交于
      - playwright_executor.py: wait/fill/click 三方法新增 iframe 遍历逻辑
      - execution.py: 新增 vulnerability_results 关联
      - 新增 create_analysis_cases.py 数据分析/运维/看板用例脚本(15个用例)
      - 新增 check_exec.py 执行状态检查辅助脚本
      - 新增多窗口并行开发指南文档
      - 更新 CLAUDE.md 和 HANDOFF.md
      
      注:数据库和安全模块变更由另一窗口单独提交
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      d3587c55
    • 陈泽健's avatar
      feat(cases): 新增21个会议管理测试用例及问题处理文档 · 4b690a98
      陈泽健 提交于
      - 新增 create_meeting_cases_v2.py 用例创建脚本(第二批次)
      - 数据库新增21个会议管理用例(会议列表操作/模板/日程/会议室/预定数据)
      - 新增协议弹窗确定按钮点击无效的问题处理与执行计划文档
      - 更新 HANDOFF.md 交接文档
      - 删除运维集控旧文件
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      4b690a98
  9. 20 7月, 2026 1 次提交
  10. 16 7月, 2026 1 次提交
    • 陈泽健's avatar
      fix(execution): 退出登录超时修复与执行跳转优化 · b0d1f92a
      陈泽健 提交于
      核心修复:
      - 退出登录步骤超时:根因是8001端口僵尸进程加载旧代码
      - 移除 logout_debug.log 调试代码,增加 params.logout 标志位
      - 执行跳转改为 query.run 参数立即跳转,不等待 run 完成
      - Execution.vue 检测 query.run 自动触发执行
      
      其他改动:
      - 用例执行顺序按模块+order排序
      - 截图默认展开
      - 新增4个数据分析用例(共29个)
      - 问题处理文档按模块归类
      - 更新 HANDOFF.md
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      b0d1f92a
  11. 14 7月, 2026 2 次提交
    • 陈泽健's avatar
      feat(menu): 菜单分类架构与步骤编辑功能 · 50f65be1
      陈泽健 提交于
      - 后端: Module/TestCase/Execution 新增 module_type/case_type 字段,database _ensure_columns 自动补齐旧库列;modules/cases/executions/reports 路由与 service 层支持按类型筛选,创建用例/执行时透传/填充 case_type
      
      - 前端: router 改 /:type? 可选参数,App.vue 模块/用例/执行/报告改父子菜单;Modules/Cases/Execution/Reports 读取路由 type 筛选;新建 CaseStepEditor UI自动化步骤编辑器(12动作+8断言动态表单,增删/上下移/自动重排)
      
      - 平台更名为"测试管理平台"(App.vue / index.html)
      
      - 修复构建: CreateCaseRequest 类型对齐 snake_case、清理未使用导入、补装 terser
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      50f65be1
    • 陈泽健's avatar
      feat(execution): 执行中心新增删除功能、用例间登录态重置及多项修复 · 12b134b7
      陈泽健 提交于
      执行中心功能增强:
      - 新增执行记录单个删除(DELETE /{id})和批量删除(POST /batch-delete)接口
      - 删除执行记录级联清理用例结果,不影响测试用例本身
      - 前端表格增加多选列、删除按钮、批量删除按钮,运行中记录双重保护
      - 修复展开行不加载结果问题:监听 expand-change 事件自动加载
      
      执行器与用例修复:
      - 修复自动登录逻辑:执行服务不再强制 auto_login=True,改进登录成功判断
      - 新增 reset_login_state() 方法,支持用例间登录态重置(用例 config.reset_login 控制)
      - 登录模块用例配置 reset_login=True,保证用例独立可重复执行
      
      文档:
      - 新增 3 组 PRD 需求文档 + 执行计划文档(展开优化、登录态重置、删除功能)
      Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
      12b134b7