ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

WebUI 自动化测试引擎 v3.0 配 TaoToken:Playwright + Ollama 的 config.toml 骨架与验证

WebUI 自动化测试引擎 v3.0 配 TaoToken:Playwright + Ollama 的 config.toml 骨架与验证 1. 为什么 WebUI 自动化测试引擎 v3.0 要接统一 Key 通道WebUI 自动化测试引擎 v3.0 是一套把「认证 → 录制 → 执行 → 诊断 → 修复 → 报告 → 构建」串成闭环的测试平台底层用 Playwright 驱动浏览器用 Ollama 提供本地模型能力。它适合测试工程师、QA 团队以及正在被「脚本写 1 天、修脚本写 3 天」折磨的开发者。但真正落地时很多人卡在同一个地方AI 能力怎么接、Key 怎么管、配置写在哪、写完怎么验证。我见过太多项目把 Key 硬编码在client.js里或者每个 Agent 各写一套请求逻辑结果换一个模型就要改五个文件。v3.0 的做法是把 AI 调用收敛成一个统一客户端配置集中到config.toml和settings.json再由 TaoToken 提供统一的 Key/API 通道。这样 Playwright 只管浏览器Ollama 只管本地推理TaoToken 负责把云端模型请求统一转发三者职责清晰。这篇不聊虚的直接给你可复制的config.toml骨架、settings.json关键字段再跑一次端到端用例最后把常见报错一个个拆开。你照着抄半小时内能完成接入验证。核心检索词就三个WebUI 自动化测试、Playwright、Ollama加上统一 Key 通道这个关键点。2. 接入前的准备TaoToken 通道与本地环境TaoToken 在这里扮演的是「统一 API 通道」的角色。你的测试引擎需要调用模型做脚本生成、失败诊断、定位器修复这些请求不必直连各家模型服务而是走 TaoToken 的统一入口Key 也只管一份。官网入口在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 基址是 https://taotoken.net/api 。环境侧你需要三样东西Node.js 18推荐 20.x LTS、Playwright 1.60、以及可选的本地 Ollama。Ollama 不是必须的但如果你想让诊断和修复在本地跑、数据不出网就装一个拉qwen2.5-coder这类模型。TaoToken 通道和 Ollama 可以并存本地模型走http://localhost:11434云端模型走 TaoToken配置里用provider字段切换。先去控制台建一个 Key路径是 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 。建完别急着写代码先把 Key 存进环境变量别进 Git。我试过把 Key 写进config.toml再提交结果 CI 日志里直接打出来了这个坑你避开。注意Key 只放环境变量或本地.env.gitignore里加上.env和auth.json。测试引擎的登录态文件同样敏感。3. config.toml 可复制骨架与 settings.json 关键字段v3.0 的配置分两层config.toml管引擎级参数AI 通道、录制器、执行器settings.json管 Playwright 与运行时行为。下面这份骨架可以直接抄改掉base_url和模型名即可。# config.toml — WebUI 自动化测试引擎 v3.0 [project] name Auto_Testing base_url http://127.0.0.1:8080 auth_storage ./auth.json log_level DEBUG [ai] # 统一通道taotoken 走云端ollama 走本地 provider taotoken base_url https://taotoken.net/api api_key_env TAOTOKEN_API_KEY model qwen2.5-coder vision_model llama3.2-vision temperature 0.2 max_tokens 8192 timeout_ms 120000 [ai.ollama] host http://localhost:11434 model qwen2.5-coder:32b enabled true [recorder] viewport [1920, 1080] enable_denoise true captcha_vision true [runner] timeout_ms 180000 retries 1 screencast truesettings.json这边关键是认证复用和失败采集字段别漏{ use: { storageState: ./auth.json, viewport: { width: 1920, height: 1080 } }, timeout: 120000, expect: { timeout: 15000 }, retries: 1, trace: on, screenshot: on, video: on, fullyParallel: true, workers: 50% }两个文件的分工要清楚config.toml决定「AI 请求发给谁」settings.json决定「浏览器怎么跑、失败留什么证据」。api_key_env指向环境变量名而不是 Key 本身这是安全底线。provider切到ollama时base_url自动走本地云端 Key 不参与适合内网环境。4. 端到端跑通一次用例从认证到报告配置写完跑一次完整链路验证。第一步捕获登录态第二步录制或生成脚本第三步执行并看报告。# 1. 注入 KeyWindows PowerShell 用 $env: export TAOTOKEN_API_KEYsk-你的Key # 2. 捕获登录态浏览器会打开手动登录后回车 npm run capture-auth # 3. 录制一个登录用例 npm run record # 选择模式 1输入脚本名 login.spec.ts输入被测 URL操作后回车停止 # 4. 执行测试 npm start执行时引擎会先做健康检查读config.toml的provider用api_key_env取 Key向 TaoToken 发一个轻量请求确认通道可用同时探测 Ollama 是否在线。两者都通就开启 AI 自动驾驶只有一个通就降级都不通就纯 Playwright 跑不阻塞测试。跑通后你会看到三层报告Playwright 原生报告含 Trace、视频、自定义步骤级报告summary.jsonsteps.json、以及多次回放对比报告。验证成功的标志是summary.json里passed计数正确、failurePatterns为空且 Trace 能在npx playwright show-report里逐帧回放。如果你只想先验证模型通道不想跑浏览器可以直接用模型对话页发一条测试请求https://taotoken.net/models?utm_sourcetaotoken_aicg_blog_endutm_contentmodelsutm_campaignrewrite 。通道通了再回来跑用例排障会快很多。5. 本篇常见报错排查接入阶段报错集中在四类逐个拆。401 / invalid api key九成是api_key_env写的变量名和实际导出的不一致或者 Key 带了多余空格。先在终端echo $TAOTOKEN_API_KEY确认非空再检查config.toml里provider是不是误设成了ollama却仍在发云端请求。Key 管理页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 可以核对 Key 状态。ECONNREFUSED 11434这是 Ollama 没启动。ollama serve起服务ollama list确认模型已拉取。如果provider taotoken却报这个错说明配置里ai.ollama.enabled为 true 且代码优先探测了本地把enabled设 false 或确保本地服务在线。strict mode violationPlaywright 定位器匹配到多个元素。v3.0 的智能录制会自动加.first()降级但手写脚本容易漏。用npm run optimize扫描低质量定位器优先换成getByRole或getByTestId。Trace Viewer 打不开file://协议下 Trace 和视频加载不了必须走 HTTP 服务。用npx playwright show-report启动本地服务再打开别直接双击 HTML 文件。AI 诊断超时timeout_ms默认 120000长脚本生成可能不够。调大到 180000同时把temperature保持在 0.2 附近温度高了生成不稳定反而更容易触发重试。6. 长期跑测试与 Agent 场景怎么配如果你只是偶尔跑一次用例上面的配置够了。但要把这套引擎接进 CI、或者让它长期做编码和 Agent 任务建议走 Coding Plan通道更稳、额度更清晰https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 。接入细节和字段说明在文档里https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 。最后留一个实操技巧把config.toml里的provider做成环境变量覆盖本地开发用ollama省钱CI 用taotoken保稳定一份配置两种跑法。改完记得先跑npm run optimize体检定位器再进 CI能省掉一大半「间歇失败」的排查时间。
返回列表