편집자 노트

dmsobtl/dsh-tool-app-verify

Browser & Electron UI

이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.

dsh-tool-app-verify

DSH 插件:Browser & Electron UI 操作与验证——让 Agent 像 QA 一样驱动应用并断言行为。

功能

Action 工具(操作应用):

  • app_launch — 启动浏览器或 Electron 应用
  • app_click — 点击元素
  • app_type — 输入文本
  • app_navigate — 导航(goto/back/forward/reload)
  • app_close — 关闭会话

Assert 工具(验证行为):

  • app_verify — 断言元素状态(存在/可见/文本/属性)
  • app_screenshot — 截图(可保存为基线)
  • app_screenshot_diff — 视觉回归:对比当前截图与基线,返回差异百分比和高亮图
  • app_accessibility — 获取 accessibility tree 快照

安装

dsh plugin add dsh-tool-app-verify

配置

- id: app-verify
  plugin: dsh-tool-app-verify
  config:
    mode: browser           # browser | electron
    headless: true
    timeout: 30000
    baselinePath: .app-verify/baselines
    diffThreshold: 0.1      # pixelmatch 容差
    viewport:
      width: 1280
      height: 720

使用示例

Browser 模式

User: 打开我们的登录页,验证登录按钮存在且可点击

Agent:
→ app_launch({ target: "http://localhost:3000/login" })
→ app_verify({ selector: "role:button[name=\"登录\"]", assertion: "visible" })
→ app_screenshot({ saveAs: "login-page" })
✓ 登录按钮存在且可见,已保存截图基线。

Electron 模式

User: 启动我们的桌面应用,检查主窗口标题

Agent:
→ app_launch({ target: "./dist/main.js", mode: "electron" })
→ app_verify({ selector: "role:heading", assertion: "text_contains", expected: "Dashboard" })
✓ 主窗口标题包含 "Dashboard"。

视觉回归测试

User: 对比当前首页和上次的基线截图

Agent:
→ app_launch({ target: "http://localhost:3000" })
→ app_screenshot_diff({ baseline: "homepage" })
结果:匹配度 97.3%,有差异区域已高亮显示。

选择器格式

格式示例说明
role:role:button[name="Submit"]Playwright role locator
text:text:Hello World文本匹配
testid:testid:login-btndata-testid 属性
////div[@class="main"]XPath
其他#id / .class / div > spanCSS 选择器

与 dsh-session-analyst 配合

  1. Agent 用本插件执行 UI 测试流程
  2. 测试完成后用 analyze_session 审计会话效率
  3. compare_sessions 对比不同版本的测试表现

开发

npm install
npm test          # 运行单元测试(选择器解析、图片对比)
npx playwright install chromium  # 首次需安装浏览器

License

MIT

REPOSITORY SIGNALS

보안 및 설치 증거

이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.

출처 추적 가능

공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.

라이선스

GitHub 메타데이터에서 라이선스가 감지되지 않았습니다.

유지보수 활동

최근 180일 내 코드 업데이트가 있습니다.

설치 증거

재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.

설치 라이프사이클 스크립트

검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.

주의 사항missing-license