在Qt自动化测试里,Squish for Qt怎么识别控件,还有对象名称变化后怎么适配,是经常碰到的一类问题,脚本录的时候明明能点到按钮,一回放就提示找不到对象,这通常不是控件真的没了,而是当初用来认它的那些条件,已经跟着变了。Squish在录制控件时,会根据对象的属性去生成Object Map里的条目,每一条都包含一个符号名和一个真实名,等跑起来的时候,再去用真实名里存着的那组属性,去AUT里面把对象给找出来。
在网页自动化测试刚开始搭建的时候,有一类问题是比较常见的,那就是Squish Web里面,操作要怎么去录制,还有录好的脚本,回放的时候又为什么会跑失败,录制的时候,看着一切都挺顺的,可一到回放,就卡在了按钮、弹窗、输入框,或者是页面跳转上,这背后的原因,多半倒不是工具它自己不能用,而是环境、对象怎么去识别、等待的条件,还有测试用的数据,这几样东西没有事先处理好。Squish for Web这个东西,它面向的是那些,要通过Web服务器去访问的、真实的Web应用,所以在做测试的时候,是需要让被测的那个页面,处在一个能被访问到、也能被反反复复重新启动起来的状态。