求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
  
 
 
 
【软件测试自动化-QTP系列讲座 9】 AutoItX技术的应用
 

2010-12-17  来源:网络

 

 

首先介绍一下AutoIt :

AutoIt v3 是用以编写并生成具有 BASIC 语言风格的脚本程序的免费软件,它被设计用来在Windows GUI(用户界面)中进行自动操作。通过它可以组合使用模拟键击、鼠标移动和窗口/控件操作等来实现自动化任务,而这是其它语言所无法做到或尚无可靠方法实现的(比如VBScript和SendKeys)。

首先要使用AUTOIT肯定需要先安装它,安装文件网上很多,这里我就不提供下载地址了~

大家可以自己百度去搜一下,安装完之后,AUTOIT会自动注册一个AUTOITX的DLL COM组件~

接下来就可以在QTP里编写脚本了,如果是10.0的话可以直接在QTP里编写,如果不是就先在VBSEDIT里编写(原因:有代码提示)

1.在QTP脚本视图里输入 Set oAutoIt = CreateObject("AutoItX3.Control")

2.由于在我们安装AUTOIT过程中已经自动注册过了COM,所以通过oAutoIt这个对象可以点出很多方法和属性。

知道了怎么调用之后我们就可以通过一个最简单的实例来了解下AUTOIT究竟是一个怎么样的东西,它能够做些什么

================实例=================

就以飞机订票登陆为例

在QTP脚本视图中输入

'创建对象 Set oAutoIt = CreateObject("AutoItX3.Control") '启动飞机订票 注意路径每个人的路径可能不一样 oAutoIt.Run "D:\\Program Files\\HP\\QuickTest Professional\\samples\\flight\\app\\flight4a.exe" '等待登陆窗口弹出 oAutoIt.WinWaitActive "Login" '给用户名控件发送消息:zzxxbb112 oAutoIt.ControlSend "Login","","Edit1","zzxxbb112" '给密码控件发送消息:mercury oAutoIt.ControlSend "Login","","Edit2","mercury" '点击LOGIN按钮 oAutoIt.ControlClick "Login","","Button1" set oAutoIt=nothing

简单的介绍一下每一步的意思

1.创建COM对象

Set oAutoIt = CreateObject("AutoItX3.Control")

2.RUN方法 ---- 启动对应路径的应用程序,这里因为是QTP10.0的因此路径是在HP下的。10.0一下是在MERCURY下的这个可以直接查找下目标就可以了。

oAutoIt.Run "D:\\Program Files\\HP\\QuickTest Professional\\samples\\flight\\app\\flight4a.exe"

amp;nbsp;

3.这一步是等待LOGIN窗口弹出变为当前激活窗口后,再执行后续的脚本,不然可能出现错误

oAutoIt.WinWaitActive "Login"

4.用户名文本框输入Edit1,至于为什么是Edit1可以使用AutoIt v3 window info 查看,这个东西其实就相当于QTP的SPY

oAutoIt.ControlSend "Login","","Edit1","zzxxbb112"

5.这一步就是输入密码框和前面用户名大同小异

oAutoIt.ControlSend "Login","","Edit2","mercury"

6.也是可以通过INFO来查控件属性

oAutoIt.ControlClick "Login","","Button1"

7.最后释放对象

set oAutoIt=nothing

这样一个简单登录就完成了,我们运行一下看看,是不是自动化了。

总结:

由于AUTOIT对于对象识别都比较底层,特别是对CS识别还是不错的,因此有些时候可以用于弥补QTP对象不能识别时的不足,比如在BS项目中可能会碰到密码控件不能识别或者一些控件不能成功识别的,可以考虑使用AUTOIT的消息发送发放试试。在AUTOIT中还有很多实用的方法,大家可以自己去看一下,总之AUTOIT绝对是一款非常有用的自动化测试辅助工具。



LoadRunner性能测试基础
软件测试结果分析和质量报告
面向对象软件测试技术研究
设计测试用例的四条原则
功能测试中故障模型的建立
性能测试综述
更多...   


性能测试方法与技术
测试过程与团队管理
LoadRunner进行性能测试
WEB应用的软件测试
手机软件测试
白盒测试方法与技术


某博彩行业 数据库自动化测试
IT服务商 Web安全测试
IT服务商 自动化测试框架
海航股份 单元测试、重构
测试需求分析与测试用例分析
互联网web测试方法与实践
基于Selenium的Web自动化测试
更多...