测试不想打扫屎山 ——我用 midscene.js 试了一下,然后放弃了
测试不想打扫屎山——我用 midscene.js 试了一下然后放弃了起因事情的起因挺简单的。项目原型图AI写的但没及时更新属于仅供参考级别。提测后我测了一两个页面发现一堆问题——界面和原型图根本对不上前端字段和后端字段不匹配、后端必填前端没校验等等各种不一致整个系统都是很明显的AI写代码味儿而且质量不咋好的那种。一沟通果然是AI写的代码且没有经过人工代码审查我当时心里只有一个感觉这玩意儿就是一座屎山。既然产品是AI的、开发也是AI的搞出来的是一座屎山那我也不乐意用人肉去打扫觉得憋屈。于是我也决定用AI来试试——用魔法打败魔法用AI测AI。就有了下面这篇记录。试下来的结论能做但太慢了不适合后台管理端页面的测试。我遇到的问题1. 控件识别还行但操作间隔太长midscene.js 对后台管理端常用的中文控件识别准确率还算可以但每个操作之间的等待时间明显偏长。在普通页面上可能感知不强但在后台管理这种数据量大、操作链长的场景下累积起来就很拖节奏。2. 页面数据加载慢时它不会优雅地等待而是“重试 20 次然后放弃”这是我觉得最可惜的一点。页面数据加载慢时midscene.js 会自动重新规划执行路径但最多只尝试 20 次然后直接报错退出。这就陷入了一个死循环因为频繁重新规划导致整体速度很慢又没办法利用重新规划的机制来做查询页面的字段遍历——原本可能是一个“顺带覆盖更多场景”的机会结果变成了“光规划就很慢还跑不彻底”。3. 断言得手写AI 只帮你定位元素这是最让我觉得“没省多少事”的地方。AI 确实能识别并定位到页面上的元素但因为没有可参照的需求文档我得自己写具体的断言逻辑。再加上定位准确率、识别效率以及大模型请求排队等问题一套流程走下来整体效率还不如人工测试来得快。后续估计有人看到这里会问那你后来到底怎么解决的实话实说——受限于项目上线时间我最后是“戴着口罩”人工打扫的。什么叫“戴着口罩”就是我跟项目经理沟通说明当前情况原型图与实际实现偏差太大按照原型图比对测试已经没有意义而且会严重拖累上线进度。最终达成的妥协是放弃原型图比对凭经验保证核心流程可用同时阶段性降低非核心模块的质量要求。嗯你理解的没错测试不想人工打扫屎山——理想很丰满现实是屎山最后还是人工扫的只是戴了个口罩而已。虽然 midscene.js 没能满足我的预期但“测试不想人工打扫屎山”这个想法我并没放弃。我会继续尝试其他方法无论后续研究的结果是正面还是反面我都会回来分享真实经历。如果你也遇到过类似的经历欢迎留言交流。踩坑的路上有人一起走会没那么孤单~

相关新闻

5款AI生成PPT工具实测对比

5款AI生成PPT工具实测对比

一、引言各位好,我是一名内容创作者,平时工作中经常需要制作各类PPT。最近体验了几款市面上关注度较高的AI生成PPT工具,记录了一些使用感受,供大家参考。本文仅代表个人使用体验,不构成任何购买或使用建议。二、测试维…

2026/10/7 22:26:16 阅读更多 →
证件伪造检测技术:从图像识别到多模态安全验证的实战解析

证件伪造检测技术:从图像识别到多模态安全验证的实战解析

你打开电脑,准备为一次跨国业务上传身份证件扫描件,突然意识到:如果对方用一张伪造的证件跟你签合同,后果会怎样?这不是电影情节,而是每天在全球各地真实发生的风险。证件伪造检测,这个看似小众…

2026/9/25 11:54:27 阅读更多 →
分布式定时任务技术选型与优化实践

分布式定时任务技术选型与优化实践

1. 定时任务技术全景图 定时任务(Cron Job)作为自动化运维的核心组件,其技术演进经历了从单机crontab到分布式任务调度的完整生命周期。现代定时任务系统需要解决的核心矛盾是:如何在海量任务调度场景下,既保证毫秒级触…

2026/10/2 10:33:31 阅读更多 →

最新新闻

Tuxedo客户端域连接配置与TPEDOMAIN错误排查指南

Tuxedo客户端域连接配置与TPEDOMAIN错误排查指南

1. 项目概述:这不是一次普通网络连通测试,而是一次面向生产环境的域身份验证闭环验证“tuxedo域连接配置与测试(客户端测试)”这个标题里藏着三个关键信号:tuxedo——不是Linux发行版Tuxedo OS,而是BEA&…

2026/10/15 9:14:01 阅读更多 →
AMD 82亿美元押注世界模型:从芯片到物理AI的生态布局

AMD 82亿美元押注世界模型:从芯片到物理AI的生态布局

1. 一笔天价收购背后的行业信号2024年夏天,一条消息在芯片圈和AI圈同时炸开:AMD宣布以约6.65亿美元现金加股票的方式收购欧洲最大的私人AI实验室Silo AI,整体交易价值约6.65亿美元。而更早之前,AMD还完成了一笔让整个行业侧目的操…

2026/10/15 9:14:01 阅读更多 →
SpringBoot+Vue企业级电商系统架构设计与实战

SpringBoot+Vue企业级电商系统架构设计与实战

1. 项目概述:企业级电商系统的技术选型与价值最近在整理一个基于SpringBootVue的企业级服装商城管理系统,这套方案在中小型电商项目中非常典型。不同于简单的Demo项目,这套架构真正考虑了高并发场景下的稳定性、前后端协作效率以及可维护性。…

2026/10/15 9:14:01 阅读更多 →
AI模型训练暂停背后:智能体安全边界与DNS防护实战

AI模型训练暂停背后:智能体安全边界与DNS防护实战

1. 从一条新闻说起:模型训练为什么会被按下暂停键前几天有个消息在圈子里传得挺开:某头部AI机构宣布暂停其最强模型的训练,原因不是算力不够,也不是资金断裂,而是训练过程中出现了一系列失控事件——用户照片被外泄、智…

2026/10/15 9:14:01 阅读更多 →
Django足球训练营管理系统开发实践

Django足球训练营管理系统开发实践

1. 项目概述这个基于Django的足球训练营管理系统,是我为一家职业足球俱乐部开发的综合性解决方案。系统主要解决三个核心问题:俱乐部日常管理、球员训练计划制定和球员能力评估。在实际使用中,这套系统已经帮助俱乐部将球员评估效率提升了60%…

2026/10/15 9:14:01 阅读更多 →
Mac本地生图实战:Stable Diffusion与MPS加速,182秒一张、10GB内存

Mac本地生图实战:Stable Diffusion与MPS加速,182秒一张、10GB内存

1. 为什么要在 Mac 上折腾本地生图先把结论摆在最前面:在 Mac 上跑本地生图,目前最现实的路径就是基于 Stable Diffusion 系列模型配合 Apple Silicon 的 MPS 加速,用 10GB 左右统一内存换一张 512512 到 768768 的图,单张耗时大概…

2026/10/15 9:12:55 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →