QTP脚本例子汇总
例一:
以下语句指示 QuickTest 选中 Itinerary 网页上的所有复选框:
Set MyDescrīption = Descrīption.Create()
MyDescrīption("html tag").Value = "INPUT"
MyDescrīption("type").Value = "checkbox"
Set Checkboxes = Browser("Itinerary").Page("Itinerary").ChildObjects(MyDescrīption)
NoOfChildObjs = Checkboxes.Count
For Counter=0 to NoOfChildObjs-1
Checkboxes(Counter).Set "ON"
Next
例二:
目标如下:
1. 脚本需要处理成功和失败的用户的登陆
2.数据驱动
设计开发脚本如下:
第一步录制脚本如下
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "吕巍"
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""
Browser("智能变电巡检仪系统 4.0").Page("Page").Syn
Browser("智能变电巡检仪系统 4.0").Close
以上为录制的正确的用户名,下边录制错误的用户名
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "xx"
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""
出现错误提示“该用户不存在”
第二步 增强脚本
现在需要设计的是一套脚本驱动所有的测试数据,这样可以驱动所有的用例数据,qtp中提供了datatable。
但是有数据驱动也要做一个事情就是如何处理错误的用户名和正确的用户名,如何结合起来呢?
这里我把datatable看作存放测试用例的地方,里面放入测试数据,还放入测试的预期结果。这样我的设计已经出现雏形了。
我把datatable设计为三列
username password status
吕x
xxx xxxx 该用户不存在
第三列放入最后执行的结果,我设计的是空为成功登陆,如果有信息就用实际运行的结果和这一列对比.好了万事俱备只欠东风了
修改脚本如下:
Dim iStatus
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set DataTable("username", dtLocalSheet)
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set DataTable("password", dtLocalSheet)
iStatus = DataTable("status", dtLocalSheet)
IfiStatus="" Then
Browser("智能变电巡检仪系统 4.0").Close
End If
IfiStatus="该用户不存在" Then
Reporter.ReportEvent micFail, "登陆", "登陆失败."
End If
Browser("智能变电巡检仪系统 4.0").Close
第三步,设置脚本运行过程
打开 tests-〉settings
设置RUN TAB页面下 Datatable iterations中 Run On all rows
这样就完成了整个脚本的设计工作,以上通过一个简单例子吧脚本的设计和软件的功能结合起来,达成脚本的设计效果。
代码错误,修改如下:
Dim iStatus
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set DataTable("username", dtLocalSheet)
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginPassword").Set DataTable("password", dtLocalSheet)
Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").Click
if登陆成功 then
DataTable.value("iStatus ",dtLocalSheet) = ""
else
DataTable.value("iStatus ",dtLocalSheet) = "该用户不存在"
End if
iStatus = DataTable("status", dtLocalSheet)
IfiStatus="" Then
Browser("智能变电巡检仪系统 4.0").Close
End If
IfiStatus="该用户不存在" Then
Reporter.ReportEvent micFail, "登陆", "登陆失败."
End If
Browser("智能变电巡检仪系统 4.0").Close 没办法验证登录用例是否执行成功
给datatable赋值,变量=datatable,判断变量的值是否等于datatable的值,能说明什么? 有没有将外部数据导入数据库的脚本啊??
页:
[1]