当前位置: 首页 > article >正文

OpenClaw自动化测试:GLM-4.7-Flash驱动浏览器回归验证

OpenClaw自动化测试GLM-4.7-Flash驱动浏览器回归验证1. 为什么选择OpenClaw做自动化测试去年接手一个遗留的Web项目时我遇到了典型的测试困境——每次代码改动后都需要手动执行47个关键路径的回归测试。某次凌晨3点我在重复点击第38个测试用例时突然想到既然AI能理解自然语言为什么不让它帮我操作浏览器这就是我探索OpenClaw自动化测试的起点。与传统基于Selenium的测试框架不同OpenClaw的核心优势在于自然语言驱动直接告诉AI测试登录功能输入错误密码应显示红色警告而不需要编写xpath定位代码动态适应能力当页面DOM结构变化时AI能通过视觉理解找到类似登录按钮的元素智能结果判断不仅检查元素是否存在还能识别这个错误提示的红色不够明显等主观质量缺陷特别在使用GLM-4.7-Flash模型后我发现其响应速度比常规大模型快3倍以上这对需要高频交互的测试场景至关重要。2. 环境搭建与模型配置2.1 基础环境准备我的测试环境配置如下硬件MacBook Pro M1/16GBGLM-4.7-Flash对硬件要求较低系统macOS Sonoma 14.5浏览器Chrome 125需启用远程调试端口# 启动Chrome调试端口 /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port92222.2 OpenClaw与GLM-4.7-Flash对接通过ollama部署GLM-4.7-Flash后在~/.openclaw/openclaw.json中配置模型端点{ models: { providers: { ollama-glm: { baseUrl: http://localhost:11434, api: openai-completions, models: [ { id: glm-4-7-flash, name: GLM-4.7-Flash, contextWindow: 128000, maxTokens: 4096 } ] } } } }验证配置是否生效openclaw models list # 应看到glm-4-7-flash状态为available3. 构建自然语言测试框架3.1 测试用例生成我在项目根目录创建test_cases文件夹每个测试用例用Markdown编写# 登录功能测试 ## 测试目标 验证错误密码场景的UI反馈 ## 操作步骤 1. 访问/login页面 2. 在用户名栏输入testuser 3. 在密码栏输入wrongpassword 4. 点击登录按钮 ## 预期结果 - 页面应显示红色文字提示密码错误 - 提示信息应在输入框下方3-5像素处 - 登录按钮应变为禁用状态OpenClaw会将这些Markdown转换为可执行操作序列关键优势在于非技术人员也能编写用例可以描述模糊需求如红色文字而非具体的RGB值支持添加视觉验收标准3.2 页面元素智能定位传统测试脚本最脆弱的部分是元素定位。当开发把idloginBtn改成data-testidsubmit-button时所有测试都会失败。而OpenClaw采用混合定位策略优先尝试传统定位通过ID/class等属性查找视觉辅助定位截图后让AI识别看起来像登录按钮的元素语义理解定位寻找用于提交表单的主要按钮实际测试中即使开发将登录按钮从button改为div rolebutton测试仍能继续运行。3.3 结果验证与报告测试完成后OpenClaw会生成包含三种验证结果的报告结构化验证DOM元素是否存在、属性值是否正确视觉验证截图对比基准图片的PSNR值语义验证AI判断这个错误提示是否足够醒目示例报告片段## 登录功能测试结果 ✅ 密码错误提示文字存在实际值密码错误 ⚠️ 文字颜色为#FF3333与标准#FF0000有轻微差异 ❌ 提示信息位置偏差8px预期3-5px4. 实战中的经验与优化4.1 Token消耗控制初期测试时每个操作步骤都调用大模型导致成本飙升。通过以下策略降低90%的Token消耗操作记忆化对成功过的操作生成xpath缓存步骤批处理将输入用户名→输入密码→点击登录合并为单个登录操作本地小模型用GLM-4.7-Flash处理简单步骤仅复杂场景调用大模型// 在配置文件中启用缓存 { skills: { testing: { enableCaching: true, batchSimpleSteps: true } } }4.2 稳定性提升技巧遇到最棘手的问题是闪烁现象——元素还没加载完成AI就尝试操作。我的解决方案是智能等待AI会监测页面是否停止网络请求主要元素是否可见重试机制对失败操作自动尝试替代方案如先滚动再点击环境隔离每个测试用例启动新的浏览器上下文# 启动测试时添加隔离参数 openclaw test run --isolate --retry 34.3 与CI/CD集成虽然OpenClaw定位是个人工具但我成功将其接入GitHub Actionsname: OpenClaw Test on: [push] jobs: test: runs-on: macos-latest steps: - uses: actions/checkoutv4 - run: | brew install ollama ollama pull glm-4-7-flash npm install -g openclaw openclaw test run --headless关键点是使用macOS runner确保浏览器兼容性在无GUI模式下仍可通过截图进行视觉验证通过--threshold 85设置验收分数阈值5. 适合与不适合的场景经过三个月实践我认为OpenClaw特别适合快速迭代的项目当DOM结构频繁变动时传统测试脚本维护成本极高视觉验收测试验证UI是否符合设计稿的感觉探索性测试临时增加测试支付流程的所有边界条件这类非预设用例而不适合性能测试AI操作速度远低于专业工具超精确验证如像素级对齐需求企业级流水线缺乏完善的权限管理和审计功能获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

OpenClaw自动化测试:GLM-4.7-Flash驱动浏览器回归验证

OpenClaw自动化测试:GLM-4.7-Flash驱动浏览器回归验证 1. 为什么选择OpenClaw做自动化测试? 去年接手一个遗留的Web项目时,我遇到了典型的测试困境——每次代码改动后,都需要手动执行47个关键路径的回归测试。某次凌晨3点&#…...

别再被“AI幻觉”骗了!一文看懂RAG:给大模型挂上最强“外挂大脑”

你是否有过这样的经历:问大模型(LLM)一个最新的新闻,或者你们公司的内部制度,它要么一本正经地胡说八道(幻觉),要么委婉地告诉你它的知识库只更新到2023年。这就是大模型的“先天缺陷…...

Pixel Dimension Fissioner生产环境:K8s集群部署+Prometheus监控裂变服务SLA

Pixel Dimension Fissioner生产环境:K8s集群部署Prometheus监控裂变服务SLA 1. 产品概述 像素语言维度裂变器(Pixel Dimension Fissioner)是一款基于MT5-Zero-Shot-Augment核心引擎构建的高端文本改写与增强工具。它将传统AI文本处理能力重构为充满活力的16-bit像…...

SeisUnix完整指南:5个步骤快速上手地震数据处理开源软件

SeisUnix完整指南:5个步骤快速上手地震数据处理开源软件 【免费下载链接】SeisUnix The CWP/SU: Seismic Un*x Package - a free open seismic processing, research, and educational software package. Please seek distribution gzipped tar files at https://wi…...

别慌!你的sklearn模型R2_score为负,可能不是代码写错了

当你的sklearn模型R2_score为负时,先别急着怀疑人生 第一次在sklearn中看到R2_score出现负值时,那种自我怀疑的感觉我至今记忆犹新。"是不是哪里写错了?"、"难道连最基本的模型都跑不对?"——这些念头在我脑海…...

OpenClaw自动化测试实践:GLM-4.7-Flash驱动单元测试与报告生成

OpenClaw自动化测试实践:GLM-4.7-Flash驱动单元测试与报告生成 1. 为什么选择OpenClaw做测试自动化? 去年接手一个遗留Java项目时,我遇到了典型的测试困境——每次代码变更后需要手动执行上百个测试用例,还要从控制台日志中人工…...

NRF24L01无线模块驱动开发与嵌入式SPI通信实战

1. NRF24L01无线通信模块技术解析与嵌入式驱动实现NRF24L01是一款工作在2.4–2.5 GHz全球通用ISM频段的单片射频收发芯片,自2007年发布以来,凭借其低功耗、高集成度和易用性,在工业遥控、传感器网络、消费电子及教育开发领域获得广泛应用。该…...

Qwen2.5-VL-7B-Instruct算力适配教程:A10/A100/V100多卡环境下的高效部署策略

Qwen2.5-VL-7B-Instruct算力适配教程:A10/A100/V100多卡环境下的高效部署策略 1. 模型概述与部署准备 Qwen2.5-VL-7B-Instruct是一款强大的多模态视觉-语言模型,能够同时处理图像和文本输入,生成高质量的响应。该模型在16GB显存环境下以BF1…...

AIGlasses_for_navigation实际作品集:盲人出行辅助系统前端界面+分割效果

AIGlasses_for_navigation实际作品集:盲人出行辅助系统前端界面分割效果 1. 引言:当AI成为视障者的“眼睛” 想象一下,如果你走在路上,眼前是一片模糊或黑暗,如何分辨脚下的路是平坦的盲道,还是危险的台阶…...

Unity Addressables Profiles配置全解:一套配置搞定开发、测试、生产环境,告别手动改路径

Unity Addressables多环境配置实战:从开发到生产的自动化路径管理 1. 多环境配置的核心挑战与解决方案 在游戏开发过程中,资源管理始终是一个复杂且关键的环节。随着项目规模扩大,如何高效管理开发、测试和生产环境中的资源路径成为技术团队必…...

uniapp混入(mixins)的5个高级用法:从分页功能到全局状态管理

Uniapp混入(mixins)的5个高阶实战技巧:从代码复用走向架构优化 在Uniapp开发中,混入(mixins)常被简单理解为代码复用的工具,但它的潜力远不止于此。当项目规模增长到一定程度时,如何优雅地管理跨组件的公共逻辑、统一处理生命周期…...

川大计算机复试面试真题拆解:从‘进程特点’到‘虚拟现实’的10道题深度分析与回答模板

川大计算机复试面试真题拆解:从‘进程特点’到‘虚拟现实’的10道题深度分析与回答模板 在计算机专业研究生复试中,面试环节往往是决定成败的关键。不同于笔试对知识点的直接考察,面试更注重考生对专业知识的理解深度、思维逻辑和临场应变能力…...

Phi-3-Mini-128K大模型快速部署教程:3步完成Ubuntu环境搭建

Phi-3-Mini-128K大模型快速部署教程:3步完成Ubuntu环境搭建 想试试微软最新开源的Phi-3-Mini-128K模型,但被复杂的部署步骤劝退?别担心,这篇教程就是为你准备的。我最近刚在Ubuntu系统上折腾完,发现其实没那么复杂&am…...

Phi-3-Mini-128K助力运维自动化:智能日志分析与故障预警

Phi-3-Mini-128K助力运维自动化:智能日志分析与故障预警 1. 引言:当运维遇上AI,告别“救火队员”模式 如果你做过运维,肯定对下面这些场景不陌生:半夜被电话叫醒,面对满屏的、每秒滚动几百行的系统日志&a…...

AIGlasses_for_navigation应用:结合STM32实现嵌入式视觉导航机器人

AIGlasses_for_navigation应用:结合STM32实现嵌入式视觉导航机器人 最近在捣鼓一个挺有意思的项目,想用最便宜的单片机做个能自己看路走的机器人。手头正好有块经典的STM32F103C8T6最小系统板,还有一台能跑AI模型的云服务器。我就琢磨着&…...

Nanbeige 4.1-3B保姆级教程:添加用户反馈机制持续优化大贤者表现

Nanbeige 4.1-3B保姆级教程:添加用户反馈机制持续优化大贤者表现 1. 项目背景与目标 Nanbeige 4.1-3B是一款具有独特像素游戏风格的AI对话模型,其"大贤者"角色设定和复古JRPG界面设计为用户带来了全新的交互体验。但在实际使用中&#xff0c…...

Qwen2.5-7B-Instruct在Visual Studio中的开发插件实现

Qwen2.5-7B-Instruct在Visual Studio中的开发插件实现 1. 引言 作为一名开发者,你是否曾经在编码过程中遇到过这样的困扰:需要快速生成代码片段、解释复杂算法,或者想要一个智能助手帮你审查代码?现在,借助Qwen2.5-7…...

OpenClaw+ollama-QwQ-32B自动化写作:从指令到Markdown生成

OpenClawollama-QwQ-32B自动化写作:从指令到Markdown生成 1. 为什么需要自动化写作助手 作为一个经常需要整理技术笔记和撰写博客的内容创作者,我长期被两个问题困扰:一是灵感转瞬即逝,经常想到好点子却来不及记录;二…...

清单来了:10个降AIGC平台深度测评,全学科适配帮你降AI率过关

在学术写作日益依赖AI辅助的当下,如何有效降低论文中的AIGC率、去除AI痕迹,同时保持内容逻辑通顺、语义清晰,成为众多学生和研究人员关注的核心问题。AI降重工具应运而生,不仅能够精准识别文本中可能被检测出AI生成的部分&#xf…...

从零到F:基于Vivado与EGo1的七段数码管译码器实战

1. 七段数码管译码器入门指南 第一次接触FPGA开发的朋友们,看到七段数码管可能会觉得既熟悉又陌生。我们日常生活中随处可见这种显示设备,比如电子钟、电梯楼层显示等。但要让它在开发板上正确显示字符,可不是简单接上线就能搞定的事。 七段数…...

毕业论文神器!降AI率工具 千笔 VS 锐智 AI 全行业通用

在AI技术迅速发展的今天,越来越多的学生和研究人员开始借助AI工具辅助论文写作,以提升效率、优化内容。然而,随着各大查重系统对AI生成内容的识别能力不断提升,论文中的“AI痕迹”也变得愈发敏感。一旦AI率过高,不仅会…...

Guohua Diffusion国风绘画工具保姆级教程:5分钟快速部署,新手秒变国画大师

Guohua Diffusion国风绘画工具保姆级教程:5分钟快速部署,新手秒变国画大师 1. 工具简介与核心价值 Guohua Diffusion是一款专为国风绘画设计的本地生成工具,基于原生Guohua-Diffusion模型开发。它最大的特点就是让没有任何绘画基础的用户&a…...

Visual Studio实战:U9 WebAPI无授权开发全流程(附避坑指南)

Visual Studio实战:U9 WebAPI无授权开发全流程(附避坑指南) 在企业级应用开发中,U9系统作为成熟的管理软件平台,其WebAPI开发一直是开发者关注的焦点。本文将带你深入探索如何绕过传统UBF开发平台的限制,直…...

Qwen-Turbo-BF16惊艳效果展示:湖面倒影波纹+微风拂过荷叶动态褶皱

Qwen-Turbo-BF16惊艳效果展示:湖面倒影波纹微风拂过荷叶动态褶皱 基于 Qwen-Image-2512 底座与 Wuli-Art Turbo LoRA 构建的高性能、极速图像生成 Web 系统 今天要展示的是Qwen-Turbo-BF16模型在生成"湖面倒影波纹微风拂过荷叶动态褶皱"这一高难度场景时的…...

TinyNAS WebUI可视化开发:零基础JavaScript调用指南

TinyNAS WebUI可视化开发:零基础JavaScript调用指南 用最简单的方式,让前端开发者快速上手TinyNAS WebUI的检测功能 1. 开篇:为什么前端开发者需要了解TinyNAS? 作为一名前端开发者,你可能经常遇到这样的需求&#xf…...

用Python CGI给老旧服务器写个简易后台管理面板(Apache配置+SQLite数据库)

用Python CGI打造轻量级服务器管理面板实战指南 在资源受限的老旧服务器环境中,部署现代Web框架往往显得大材小用。本文将展示如何利用Python CGI和SQLite数据库,为树莓派、老款VPS等设备快速构建一个功能完备的轻量级管理面板。这种方案特别适合需要快速…...

影墨·今颜GPU算力成本分析:A10单卡月均¥800 vs API调用年省¥12万

影墨今颜GPU算力成本分析:A10单卡月均¥800 vs API调用年省¥12万 在AI影像创作领域,追求极致画质与真实感已成为核心趋势。然而,对于个人创作者、小型工作室乃至企业而言,部署和运行一个像「影墨今颜」这样…...

华硕笔记本性能优化:3步快速掌握G-Helper系统调优工具

华硕笔记本性能优化:3步快速掌握G-Helper系统调优工具 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目地址…...

Spring_couplet_generation 作为教学工具:计算机专业课程设计案例

Spring_couplet_generation 作为教学工具:计算机专业课程设计案例 最近在准备《人工智能导论》的课程设计,想找一个既能体现AI应用全流程,又不会让学生望而却步的实践项目。找来找去,发现用AI写对联这个事儿,其实是个…...

Qwen3-Reranker-0.6B效果展示:多语言混合文档(中英法)重排准确率对比

Qwen3-Reranker-0.6B效果展示:多语言混合文档(中英法)重排准确率对比 1. 引言 想象一下,你正在一个庞大的多语言知识库中搜索信息。这个知识库里混杂着中文、英文、法文等各种语言的文档。你输入一个中文问题,系统返…...