基于GUI测试工具Squish的使用
转载自:http://www.readingday.cn/squish-for-qt-2/
申请Squish试用
浏览器打开Squish官网(https://www.froglogic.com/squish/free-trial/),填写试用申请表。您需要提供一个有效的邮箱地址,以便接收到Squish官方所发送的相关信息。
激活信息会在提交申请后的24小时之内通过邮件的形式发送至您申请时所填写的邮箱地址。
在填写试用申请表的国家一项时,请不要选择中国。我们发现如果申请表国家一栏选择中国时,Squish的试用申请信息会被转交给Squish在中国方面的代理商,届时您需要提供公司的相关信息才能获得激活码和下载链接。
目前官方提供的试用期限为 10天(不是30天)。
下载Squish安装包
当试用申请通过以后,Squish官方会发送一个登录账号信息到您的注册邮箱中。用户名为您注册时填写的邮箱地址,密码为随机的8位字符。浏览器打开(http://www.froglogic.com/secure/)页面,填写正确的登录信息,即可登录Squish的下载页面。此页面同时提供软件的激活码信息。
针对本次自动化测试项目,您需要下载对应的Squish版本squish-6.2.0-qt55x-win32-msvc10.exe
查看此Squish文件的命名,我们可以得到以下信息:
- Squish 6.2.0 版本
- 基于Qt 5.5.x对象库
- Windows 32bit
- 软件在Microsoft Visual Studio 2010下编译完成
Squish的安装
在开始运用Squish进行测试前,请确保电脑中成功安装了基于GUI自动化测试的Squish for Qt工具。同安装绝大多数Windows平台应用程序一样,Squish for Qt的安装过程只需要一路默认安装即可。
进行Squish for Qt安装(此处以版本6.1.0进行示例安装)
- 执行安装
双击先前下载的程序squish-6.1.0-qt55x-win32-msvc10.exe,开始安装
- 输入有效的Squish激活码
- 同意试用许可协议
- 选择Squish的安装目录
- 创建“桌面”与“开始菜单”快捷方式
- 执行安装
- 完成Squish for Qt安装
新建测试项目集、测试用例
Squish for Qt的集成开发环境类似于Eclipse。如果您原先熟悉Eclipse软件,相信您会很快掌握Squish for Qt的开发环境。
创建项目集:
- 依次打开菜单 File | New… | Squish Test Suite
- 在New Squish Test Suite对话框,填写项目名称并选择项目存储路径
- 点击Next >进入编程语言选择对话框;本项目选择JavaScript语言作为编程语言
- 点击Next >进入测试程序选择对话框,选择被测试的程序(AUT)
- 点击Finish完成新建项目集的操作
- 在刚刚新建的项目集中,增加一个测试用例,即可以进行测试脚本的开发事宜
项目集名称以“suite_”开头;测试用例以 “tst_”开头。
运行测试用例
首先,加载被测试程序(AUT)
点击Test Suite Settings | Application Under Test (AUT)加载被测试程序。
运行单个测试用例
双击打开所要运行的测试用例,执行(Run | Run Test Case)即可启动被测程序按脚本先后顺序进行测试。
批量运行测试用例
勾选所要进行测试的脚本,执行(Run | Run Test Suite)即可启动被测程序。Squish for Qt会按照一定的顺序运行勾选的各个脚本。
测试结果的查看
自动化测试结果会以日志记录的方式呈现Test Results (Window | Show View… | Other… | Squish Tests | Test Results)。在每次自动化测试完成后,Squish for Qt均会生成测试结果日志。此日志包括:
- Pass Messages(测试中通过的消息)
- Expected Fail Messages (测试中预期失败的消息)
- Fail Messages (测试中失败的消息)
- Unexpected Pass Messages (测试中未预期通过的消息)
- Error Messages (测试中错误的消息)
- Fatal Messages (测试中严重错误的消息)
- Warning Messages (测试中警告的消息)
- Log Messages (测试中日志记录的消息)
Squish for Qt提供了一个针对不同日志消息进行分类筛选(Filter the Results)的功能。利用此功能,您可以筛选出自己最想要看到的测试结果。当您最想知道测试结果中Error Messages一类消息时,可以将其它消息进行去除“勾选”,只保留Error Messages,这样筛选出来的消息即只有Error Messages一类。
结果文件由XML转成HTML
您可以在集成开发环境(Squish for Qt)中查看日志信息,但这终究不方便。聪明的您可能会想到,是不是有其它更为便捷的方式进行报告查看?为方便测试结果的查看与测试中出现的问题定位,您需要将测试结果日志导出,并进行格式转换。
导出XML文档
在Test Results区域右键点击,选择Export Results…将测试结果以XML格式导出保存。
在导出的保存位置对话框中,您可能注意到其“保存类型(T)”为 Squish Report Files(v3)。这里的v3代表着SquishReport version 3.1,即此版本的XML报告结构是基于Squish xml schema 的3.1版本进行的。
XML文档转换成HTML文档
Squish for Qt安装目录下存在一个名为regressiontesting的目录。位于这个目录下的两个Python文件可以将XML转换为HTML格式。
- squishxml2html.py
适合Squish xml 2.0版本的文件。
- squishxml3html.py
适合Squish xml 3.1版本的文件。
下面将进行文档格式转换的处理,在此之前请确保您的机器安装有 Python 2.7 。
将xml(以results.xml为例)结果文件放于与 squishxml3html.py(请依据Squish xml的版本进行选择)同一目录下。
命令行模式下进入此目录,执行以下代码:
python squishxml3html.py ./ results.xml
运行上述代码即可在同一目录下生成results.html、index.html文件。
- index.html(测试报告概要)
- results.html(自动化测试详细内容)
通过浏览器打开results.html,可以查看测试结果的详细内容。
官方提供的Python脚本在处理中文字符时会出现问题,需要更改一下编码类型。
解决方法是加入以下两句话
reload(sys)
sys.setdefaultencoding( "utf-8" )
更新后的部分代码类似于下图所示
squishxml3html.py文件已经上传至Git代码库。相较于官方提供的版本,此squishxml3html.py脚本更改了不同消息的呈现颜色,并加入了Warning Messages类的消息统计。
基于GUI测试工具Squish的使用相关推荐
- python gui测试工具_在Suse10下尝试dogtail(一个python的GUI测试工具..
你的位置: 技术文档 -> Python -> 文档详情 在Suse10下尝试dogtail(一个python的GUI测试工具.. 零 简介: DogTail是一个用python写的,自动 ...
- Squish简介——跨平台自动化GUI测试工具
Squish主页:http://www.froglogic.com/index.php Squish是一款专业的自动化GUI测试框架,Squish可以测试的GUI应用程序: 1.由Sun公司出品的工具 ...
- GUI测试 东南大学 SEU 软件测试
GUI测试 本文是东南大学李必信老师软件测试选修课的报告. 文章有部分内容来源于博客<软件测试 (三) 界面测试>, 小坦克 一. 界面测试需求 界面又称人机交互接口,现今流行的主要有命令 ...
- Linux桌面GUI自动化测试工具-----dogtail
参考1 参考2 源码 1. 关于dogtail dogtail 是 使用可访问性(A11Y,Accessibility)技术与桌面应用程序通信的图形用户界面GUI测试工具和自动化框架. dogtail ...
- squish自动化测试_Squish GUI测试自动化工具达到4.0
squish自动化测试 Squish 4.0现已推出. Squish是一种跨平台和跨技术的GUI测试自动化工具,用于测试基于多种GUI技术的应用程序,包括Java SWT / Eclipse RCP和 ...
- 多设备monkey测试工具_基于Tkinter GUI操作
V1.0版本 先看下效果吧: 简单的介绍下: 1.设备列表区域:用于展示当前连接的所有设备 2.monkey参数区域:用于显示即将执行的monkey参数 3.日志区域:用于显示必要日志(其实没啥卵用, ...
- gnome硬盘分析_三款基于GUI和终端的实用Linux磁盘扫描工具
[51CTO.com快译]扫描计算机硬盘主要出于两个原因:一个原因是分析硬盘,找出文件系统的不一致或错误.引起这些问题的可能因素包括:持续的系统崩溃,关键的系统软件关闭不当,更主要的是破坏性程序(比如 ...
- 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017
v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...
- soapui工具_基于开源的API测试工具!不再为web服务负载测试而发愁
通过一个可视化.拖拽式的界面,LoadUI允许您实时.交互式地创建.配置和重分配负载测试.在单一测试环境下,LoadUI提供完整的测试覆盖,支持所有标准的协议和技术.它功能强大,能从任意数量的本地和远 ...
最新文章
- ROS系统——动态修改realsense相机参数方法
- 【计算理论】Pumping 引理 ( 四个等价概念 | 自动机界限 | Pumping 引理简介 | Pumping 引理证明正则表达式 | Pumping 引理示例分析 )
- 播放[.m3u8]链接解决方案
- Flask爱家租房--发布新房源(保存房屋图片)
- 字体大宝库:设计师必备的专业免费英文字体
- sha java 应用_Java中常用的加密算法应用MD5,SHA,RSA
- 计算机winform参考文献写,毕业论文基于C#WinForm的语音通信系统设计.doc
- nginx 接收报文_Nginx代理缓存功能
- redis copy-on-write机制
- 【PMP】项目整合管理
- DLL调用异常:The value of ESP was not properly
- 助航标志信息自动导入电子海图研究
- 街道设计导则与城市道路系统的优化提升:从通行能力到空间品质的转变
- 按分号读取字符串,strncpy读取乱码
- Android你不知道的svc命令----解析adb shell svc源码
- 数据库系统概念4中级SQL
- 在每一个时光寻找,寻找适合我的孤岛。
- 中文、\uxxxx、\x xx、base64的相互转码
- 高考成绩查询2021汕头市,2021汕头市地区高考成绩排名查询
- OPC UA JAVA开发笔记(四):数据写入
热门文章
- shell脚本批量telnet端口不通长时间不断开问题解决
- serverless安装Tencent Serverless CLI报错 RequestError: read ECONNRESET
- python使用DCGAN生成图片
- 数据连接-Silk简介
- pc业务场景示例图+后台风格模板
- 于佳宁:区块链是世界性技术,赋能实体经济大有可为
- (一)pygame.event详细解析
- 前端设计(动态,渐变)
- android6.0 悬浮窗权限,Android6.0系统悬浮窗权限的问题解决方法
- 解析男性程序员与女性程序员的差异,女程序员工作也有优势的!!