Squish教程中心
Squish中文网站 > 教程中心
Squish
免费下载
前往了解
自动化测试被放进持续集成的流水线里面去跑之后,慢慢就会发觉,真正容易出问题的往往已经不是测试脚本写得对不对了,而是更多集中在运行的环境、文件存放的路径、执行时的权限,还有被测程序本身是怎么被启动的这个方面上。要说清楚对Squish和Jenkins的集成工作到底应该怎样去配置,以及在Jenkins上面的任务跑失败了以后又该怎么去排查,这里面最核心的一个事情,就是需要让Jenkins能够稳稳当当地把squishrunner这个运行器的命令给调用起来,同时还必须保障squishserver服务、存放测试案例的套件、被测的应用程序,以及用来放置测试报告的目录,都能够被当前这台负责执行任务的节点机器正常地访问到。实际上,Squish这个工具是支持通过Jenkins里创建的任务来跑测试的,在这个过程里头,squishrunner会专门负责去执行测试的脚本,并且和squishserver之间进行通信。
2026-06-01
当录制的脚本慢慢变多以后,那些反复出现的登录操作、打开页面的行为、清理数据的步骤以及等待控件出现的逻辑,维护起来就会变得越来越费劲;要说清楚Squish里面的共享脚本该怎样重复使用,以及它被导入之后为什么又不起来了作用,最关键的一点,就是要把那些公共的函数给存放到合适的目录下面,并且还要在用例的脚本里明确地把它加载进来。按照Squish官方的说明文档,共享脚本可以被安置在测试套件下的shared/scripts这个目录里面,也能作为Global Scripts拿给多个测试套件去共同使用。
2026-06-01
在Qt自动化测试里,Squish for Qt怎么识别控件,还有对象名称变化后怎么适配,是经常碰到的一类问题,脚本录的时候明明能点到按钮,一回放就提示找不到对象,这通常不是控件真的没了,而是当初用来认它的那些条件,已经跟着变了。Squish在录制控件时,会根据对象的属性去生成Object Map里的条目,每一条都包含一个符号名和一个真实名,等跑起来的时候,再去用真实名里存着的那组属性,去AUT里面把对象给找出来。
2026-06-01
在网页自动化测试刚开始搭建的时候,有一类问题是比较常见的,那就是Squish Web里面,操作要怎么去录制,还有录好的脚本,回放的时候又为什么会跑失败,录制的时候,看着一切都挺顺的,可一到回放,就卡在了按钮、弹窗、输入框,或者是页面跳转上,这背后的原因,多半倒不是工具它自己不能用,而是环境、对象怎么去识别、等待的条件,还有测试用的数据,这几样东西没有事先处理好。Squish for Web这个东西,它面向的是那些,要通过Web服务器去访问的、真实的Web应用,所以在做测试的时候,是需要让被测的那个页面,处在一个能被访问到、也能被反反复复重新启动起来的状态。
2026-06-01
界面自动化用例跑久了以后,图像差异常常会变成一类很烦人的问题。对于Squish图像校验要怎么设置,以及图像校验里面的阈值又要怎么调整,这里头的重点,其实并不是单纯地去截一张图然后拿来比较,而是先要把校验的对象、截图的区域范围、遮罩的部位,还有能接受的容差规则给确定下来。Squish里面提供的检查点,既可以在它的开发工具里面用选单的方式去建好,也可以直接通过写脚本的办法来产生,而图像类的校验,比较合适的路子,一般是先借助开发工具来生成,之后再去依照结果进行细调。
2026-06-01
随着自动化脚本运行的时间越来越长,遇到的问题不能仅仅依靠日志来进行猜测,此时,了解Squish脚本的断点怎么调试,以及调试时变量值怎么查看,就变得很重要了,这些事情通常需要从Squish IDE的调试运行功能开始,根据Squish官方的文档说明,Squish IDE是支持对测试脚本进行调试的,而且还可以结合断点去检查正在运行中的被测软件的对象状态,这样对于找出对象识别方面的错误、等待超时的问题,还有分支判断上的失误,都会很有帮助。
2026-06-01
在界面自动化测试脚本中,最大的麻烦不是脚本数量多,而是一旦按钮、窗口或表格列的名字改变,整套用例就会大量报错。Squish对象名称该如何维护,当对象名称改变后又如何批量更新,关键做法就是把识别对象的信息统一放在Object Map里,不要在脚本各处直接写死真实的对象名称。根据Squish的官方文档,Object Map的作用就是集中管理对象名称,这样一来,即使应用的界面层次或者对象属性变了,也只需改动映射项,脚本里所引用的符号名称就能尽可能地保持稳定。
2026-06-01
Squish的许可证要怎么激活,还有许可证服务器连不上的时候该怎么处理,这些事情在第一次安装工具、好几个人一起用一套许可证、或者是在CI机器上跑自动化测试的时候,是经常会碰到的,现在Squish比较常见的许可证方式有三种,一种是本地许可证,一种是Squish浮动许可证服务器,还有一种是Qt许可证服务器,按照官方的说明,本地许可证主要是给评估用户准备的,商业用户需要从负责许可证的管理员那里,问清楚服务器的类型、地址和端口号,然后在安装或者配置Squish的时候把这些信息填进去。
2026-06-01
Squish脚本一开始看起来只是把录制结果改一改就能跑,但用例一多以后,最先失控的往往不是语法,而是复用边界。登录流程复制一份又一份,对象名散在各个脚本里,页面切换一改就要到处补。按Squish官方文档的原生结构来看,测试套件本身已经把测试用例目录、shared共享目录、对象库和全局脚本分成了不同层级,而且查找共享脚本时也有固定顺序。顺着这套结构来组织脚本,再去拆公共函数和页面对象,工程会稳很多。
2026-04-22
在Squish里做OCR,识别错并不一定说明OCR引擎本身坏了,更常见的情况是语言提示没给对、识别区域放得太大,或者界面文本的渲染方式和默认放大参数不匹配。Qt官方文档写得很清楚,Squish默认依赖Tesseract做OCR,而且Tesseract需要单独安装;同时,OCR相关函数本身就提供了`language`、`scaleFactor`、`searchRegion`、`timeout`这些参数,说明官方本来就把语言、缩放和识别范围当成影响结果的关键因素。
2026-04-22

第一页123456下一页最后一页

135 2431 0251