自动化测试工具 - Unified Functional Testing
这几天跟自动化测试工具UFT耗上了。。。
网罗了下,居然有不少自动化测试工具,像Selenium,QTP(UFT前身),LoadRunner,真是只有想不到,没有人家办不到。
言归正传,记录下小白使用UFT工具的过程,主要是记录些其中的一些隐藏功能以便以后查阅。
1. 工具版本
界面挺清新的,感觉有些类似VS,要licence,免费使用60天
2. 使用文档
(1) 官方网站
(2) PDF
因为UFT前身叫做QTP,所以QTP的一些指导文档也可以拿来看看
(4) QTP quick guide
3. 业务场景:自动化操作Web+Applet的应用
(1) 浏览器:IE11
(2) 使用UFT中的GUI test
I) 新建Action,再到工具栏中的"Record"项设置,然后点击红圆点开始动作录制。
II) 如下工具辅助录制过程
1. 主要用到
Default: 记录Web
Insight Recording: 记录Web,Window,Applet等
Low-Level Recording:最详细,可记录所有事件
2. 检测对象并查看属性
3. Sychronized作用,保证事件先后顺序
III) 如下消息框为Web部分,使用Default模式即可
IV) 如下为Applet应用,使用Insight Recording模式(Default模式下UFT会报错退出)
V) 在使用Insight Recording模式后仍然出现UFT报错退出的情况,改用Low-Level Recording模式(此时会记录操作的坐标位置)
4. 其他tips
1) 在Tools项下,“Object Identification...”和"Options..."目前用的比较多
2) Options下可以设置GUI Testing,比如用With将同一对象下的操作包裹起来。
3) Action 中的脚本据说跟VBScript类似,所以rem来注释脚本
rem Browser("").
4) Run项下的"Maintenance Run Mode..."可以用来在运行时更新脚本,"Run from Step..."可以用来做局部脚本测试(当然Web测试页面需要对应)
5) UFT在Insight Recording模式下获取并呈现在Active Screen中的图像采用了Abby的OCR技术
6) 在Low-Level Recording模式下会记录操作的坐标位置,如果能用对象属性定位为最好。
这个需要先利用"Object Spy..."识别对象,然后有个骚操作 - 点击对象并拖到Action脚本中释放,脚本自动生成了。
7) Object Repository Manager
可以在"Object Spy..."识别的对象基础上自定义更加准确的对象(比如重命名对象名称)。
1. Test Objects下自定义了Password和User ID对象,实际上就是上面提到的在Low-Level Recording模式下获取的对象。
2. Test object details列出定位对象的属性,可以修改。其中的默认值(包括Enable Smart Identification属性)在“Object Identification...”中设定。
3. 在Object Repository Manager窗口中使用"Object Spy...",选取对象并拖到Action脚本中,自动生成的脚本便使用自定义对象名称。
4. 右键点击生成的脚本语句可以查看具体的对象属性。如无法查看对象属性,需要将保存的Object Repository(.tsr)文件同Action关联,如下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2015-06-22 Spring Boot - fish