使用QTP进行非GUI的自动化测试

QTP使用教程 QTP使用教程,介绍,简介,基本操作 阅读详情

QTP是非常优秀的面向GUI的自动化测试工具,由于采用的是VBS作为脚本开发语言,因此可以利用VBS的优势进行很多非GUI类型的自动化测试测试。就像Ian Fraser所说的“The true beauty of QTP is that the only limitation is your imagination and ability to code in VBScript.”

只要VBS能做的东西,基本上就可以在QTP中应用上。

 

FTP

下面是一个通过Extern调用wininet.dll实现ftp上传下载的例子:

 

Const DEFAULT_FTP_PORT =21

Const SERVICE_FTP = 1

Const OPEN_TYPE_DIRECT = 1

Const FTP_TRANSFER_TYPE_ASCII = 1

 

Extern.Declare micLong,"InternetOpen","wininet.dll","InternetOpenA",micString,micDWord,micString,micString,micDWord

Extern.Declare micLong,"InternetConnect","wininet.dll","InternetConnectA",micLong,micString,micInteger,micString,micString,micDWord,micDWord,micDWord

Extern.Declare micInteger,"FtpGetFile","wininet.dll","FtpGetFileA",micLong,micString,micString,micInteger,micDWord,micDWord,micDWord

Extern.Declare micInteger,"FtpPutFile","wininet.dll","FtpPutFileA",micLong,micString,micString,micDWord

Extern.Declare micInteger,"InternetCloseHandle","wininet.dll","InternetCloseHandle",micLong

 

'  打开

hInternet = Extern.InternetOpen("QTP_FTP",OPEN_TYPE_DIRECT,vbNullChar,vbNullChar,0)

If hInternet=0 Then Print("QTP_FTP:Failed to setup FTP environment.")

 

' 连接

hConnection = Extern.InternetConnect(hInternet,"192.168.1.2",DEFAULT_FTP_PORT,"user1","user1",1,0,0)

If hConnection =0 Then Print("Failed to setup FTP environment")

 

' 上传

' bRetval = Extern.FtpPutFile(hConnection,sLocalFile,sRemoteFile,0)

 

' 下载

bRetval = Extern.FtpGetFile(hConnection,"/Mercury/QuickTest/QTP crack.rar","D:/QTP crack.rar",0,0,1,0)

If Not CBool(bRetVal) Then

       Reporter.ReportEvent micFail,"FTP:FtpGetFile function","Failed to open download file."

else

       Print("FTP:File :QTP crack.rar downloaded successfully")

       'Reporter.ReportEvent micPass,"FTP:FtpPutFile function","FTP:File"&sLocalFile&"upload successfully."

End If

 

' 关闭

Extern.InternetCloseHandle(hConnection)

Extern.InternetCloseHandle(hInternet)

 

 

Linux命令行测试

利用W3Socket 这个dll所提供的API,可以在QTP中访问linux命令行,执行linux命令并获取命令行返回

 

W3Socket 的API参考:

http://www.dimac.net/Products/FreeProducts/w3Sockets/Reference/Refstart.htm

 

 

WebService测试

 

利用windows的WinHTTP所提供的接口,可以访问HTTP页面、WebService,获取返回的页面数据,例如:

 

' WinHttp.WinHttpRequest.5.1 Object

Set oWinHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")

oWinHttpReq.Open "POST", sWebService_Url, False

oWinHttpReq.setRequestHeader "Content-Type", sContentType

oWinHttpReq.setRequestHeader "SOAPAction", sSOAPAction

 

'Send SOAP request

oWinHttpReq.Send  sSOAP_Request

 

'Get XML Response

sXMLResponse = oWinHttpReq.ResponseText

 

 

 

 

 

再结合Msxml.dll所提供的Msxml2.DOMDocument接口,可以对WebService返回的xml数据进行解析:

'Msxml2.DOMDocument

Set oInputXmlDoc = CreateObject("Msxml2.DOMDocument")

  'loadXML from file

oInputXmlDoc.load("C:/XML_Files_Demo/Weight_Conversion.xml")

 

 

 

 

参考:《QTP: Not just for GUI anymore》

www.connectedtesting.com

 

QTP自动化测试技术——经典面试题 阅读详情

相关推荐

使用QTP/UFT进行功能测试

    QTP(QuickTest Professional)是一种自动测试工具,使用QTP可以执行重复的自动化测试,主要用于回归测试和测试同一软件的新版本。因此在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤、输入数据和期望的输出数据等。    这里我首先使用QTP11,对web进行功能测试,后来发现由于一些问题无法解决,后改为UFT12(Unified Functional...

shaomingshan的博客 1万+

【自动化测试工具】QTP/UFT入门

准备工作: QTP11.5安装教程:http://www.iquicktest.com/qtp-uft-11-5-download.html 注: QuickTest Pro(QTP)11.5后更名为UnifiedFunctional Testing(UFT) 1、安装后打开QTP,勾选Web add-in,进入QTP后File-New-Test。 2、选择File菜单下New

sanlengjingvv的专栏 6万+

RFT和QTP与AutoIt

RFT和QTP与AutoIt

gdhjgfr的博客 526

qtp可以linux图形界面吗,使用QTP进行非GUI的自动化测试

QTP是非常优秀的面向GUI的自动化测试工具,由于采用的是VBS作为脚本开发语言,因此可以利用VBS的优势进行很多非GUI类型的自动化测试测试。就像Ian Fraser所说的“The true beauty of QTP is that the only limitation is your imagination and ability to code in VBScript.”只要VBS能做的...

weixin_29361879的博客 242

QTP自动化测试工具全面学习资源

VBScript是微软公司开发的一种脚本语言,最初作为Visual Basic的一个简化版本出现。其主要特点包括轻量级、易于学习、支持在Windows环境下的快速开发和测试。它广泛应用于网络开发、自动化测试,尤其在早期的QTP自动化测试工具中占据了重要地位。用户可以创建自定义子程序和函数来封装逻辑,提高代码复用性。函数可以带有参数并返回值。例如,创建一个函数计算两个数的和:Dim sumMsgBox sum ' 输出结果15。

weixin_31869917的博客 424

软件测试QTP

软件测试白盒测试QTP软件测试

QTP-不止GUI自动化测试之Telnet自动化

QTP-不止GUI自动化测试之Telnet自动化 发布于:2013-12-26 19:45:21来自【群】QTP                     编辑 去年我们在推广QTP的时候,很多人问到我QTP能否完成一些非GUI类的自动化测试,由于公司产品的特殊性,大部分时候,测试人员更多地是需要进入设备调试端口进行调试,这个时候问题就来了,我们的QTP还能搞定吗? 拿

chenfeng086的专栏 594

QTP中自定义的常用函数,包括FTP,测试报告等

QTP中自定义的常用函数,包括FTP,测试报告等

AutoIt vs QTP

AutoIt vs QTP

gdhjgfr的博客 533

QTP(UFT)手册

QTP自动化测试

自动化测试中基于GUI非标准控件的识别和应用.pdf

标准WIN32、WPF的UI识别都可以通过UIAutomation解决,但是自绘控件和第三方非标准控件的识别,就是个难题,暴力式的基于坐标的屏显OCR识别明显是不可绝对保证的,现在给出一个新思路

QTP——功能测试

QTP——功能测试

CherriesOvO的博客 2805

(SCADA)监控与数据采集系统

SCADA应用于监控和采集数据来控制工业过程软件。它通过收集和传输实时数据,帮助操作员监视和控制各种设备和过程。

软件技术的专栏 4542

【自动化测试技术QTP系列讲座二】--自动化的分类及如何学习QTP

<br /> <br />本讲主要讲两个点:<br />   自动化的分类,自动化测试本身可以分为多个层面,在每个层面,“自动化”一词都将具有不同的含义;<br />首先,在单元测试阶段,就有单元测试的自动化,象java里的junit测试<br />其次是软件集成测试, 这里又可以细分为两个不同的层面。先看传统意义上的软件集成测试,这个非常类似单元测试,但关注点主要是在软件模块之间的调用接口,对于我们测试而言,两者最大的区别在于集成代码不允许打桩,必须调用真实的底层代码,单元测试代码必须打桩,以上这点就决定

Global Test Service--Performance testing 1142

Ubuntu安装pytorch3d的最便捷方法【原创】

Ubuntu安装pytorch3d的最便捷方法

qq_54900679的博客 2924

飞控算法-姿态解算之互补滤波

飞控乱入之姿态解算 姿态解算是通过读取各个传感器的数据进行融合最终得到当前飞行器的姿态,姿态通常用Euler角(Roll-Pitch-Yaw)来表示 姿态解算框架 姿态解算的数据源可来自于陀螺仪或加速度计,他们分别都可以得到当前姿态,但实际上他们都有各自的传感器性能的优缺点,需要取长补短,进行数据融合才能得到真实的姿态,这种方法简称 互补滤波 算法 传感器特性 互补滤波 姿态解...

GoolyOh的专栏 1万+

QTP自动化测试最佳实践

《QTP自动化测试最佳实践》基本信息作者: 陈能技 [作译者介绍] 丛书名: 测试实践丛书 出版社:电子工业出版社 ISBN:9787121175817上架时间:2012-8-6出版日期:2012 年8月开本:16开页码:600版次:1-1所属分类: 计算机 &gt; 软件工程及软件方法学 &gt; 软件项目管理       更多关于 》》》《QTP...

weixin_34001430的博客 705

转义序列字符(\0,\n,\r,\t,\v,\a,\f,\b,\\,\‘,\“,\?)详解,转义字符对应的全称,输出结果和对应的ASCII码值详解;

转义序列字符(\0,\n,\r,\t,\v,\a,\f,\b,\\,\',\",\?)详解,转义字符对应的全称,输出结果和对应的ASCII码值详解;

南城花开过的博客 3万+

[QTP]基本使用

1. QTP的基本功能 1.1 QTP测试过程 QTP的基本功能包含两大部分:一部分是提供给初级用户的关键字视图,另一部分是提供给熟悉VBScript脚本编写的专家视图。在实际的测试中可以结合使用。 使用QTP进行自动化测试一般包括5个步骤: 1) 录制测试脚本: 利用QTP对象识别、鼠标和键盘监控机制来录制测试脚本。 2) 编辑测试脚本: 包括调整测试步骤、编辑测试逻辑、插入检

时光荏苒心依旧的博客 1708

【HarmonyOS 5】鸿蒙APP使用【团结引擎Unity】开发的案例教程

以下是基于团结引擎开发鸿蒙Unity应用的详细案例教程,整合环境配置、工程适配、跨语言通信等核心环节。

2201_75709314的博客 2482

微信小程序 - {“errMsg”:”requestPayment:fail banned”} 微信小程序调用wx.requestPayment支付失败返回错误(uniapp微信小程序微信支付报错)

{“errMsg”:”requestPayment:fail banned”},微信小程序调用wx.requestPayment报错requestPayment:fail banned,uni-app微信小程序wx.requestPayment支付报错requestPayment:fail banned,拉起小程序支付报错,iPhone苹果ios真机微信支付报错,Android安卓手机微信支付报错,支付报错,商户配置,签名验证,uniapp 小程序支付微信支付一场,设置过b2b类目,确认了商户号相关功能正常

🏆 前端领域优质创作者 3341
上一篇: QTP关键字驱动框架 - RelevantCodes[1]One
下一篇: Sikuli测试应用研究报告
TIB
TIB
博客等级 码龄19年 2879粉丝 957原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值