Wait(2),单位:秒
i=0
do while(i<10)
Window("Opera").Restore
Window("Opera").WinObject("OperaWindowClass").Click 446,232
Window("Opera").WinObject("OperaWindowClass").Click 461,278
i=i+1
loop
For i=1 to 3
Window("Opera").Restore
Window("Opera").WinObject("OperaWindowClass").Click 446,232
Window("Opera").WinObject("OperaWindowClass").Click 461,278
Next
Do while(i<20)
Browser("XX项目").Page("XX项目").Frame("wap").Link("啤酒").Click
wait(2)
Browser("XX项目").Page("XX项目").Frame("wap_2").Link("商铺详情").Click
wait(2)
i=i+1
If i=5 Then
Exit do
End If
Loop
Do while(i<20)
With Browser("XX项目")
.Page("XX项目").Frame("wap").Link("生活家居").Click
.Page("XX项目").Frame("wap_5").Link("出租(火爆招租中)").Click
.Page("XX项目").Sync
With .Page("XX项目")
.Frame("wap_6").Image("image").Check CheckPoint("image")'检查点
.Frame("wap_6").Link("返回XX首页").Click
.Sync
.Frame("wap").Check CheckPoint("生活家居")'检查点
End with
End with
i=i+1
If i=3 Then
i=21
End If
Loop
Browser("XX项目").Page("XX项目").Frame("wap").Link("生活家居").Click
Browser("XX项目").Page("XX项目").Frame("wap_5").Link("出租(火爆招租中)").Click
Browser("XX项目").Page("XX项目").Sync
Browser("XX项目").Page("XX项目").Frame("wap_6").Image("image").Check CheckPoint("image")'检查点
Browser("XX项目").Page("XX项目").Frame("wap_6").Link("返回XX首页").Click
Browser("XX项目").Page("XX项目").Sync
Browser("XX项目").Page("XX项目").Frame("wap").Check CheckPoint("生活家居")'检查点
Function hjq(i)
msgbox("hjq")
End Function
Do while(i<20)
'开始
Browser("XX项目").Page("XX项目").Frame("wap").Link("啤酒").Click
wait(2)
Browser("XX项目").Page("XX项目").Frame("wap_2").Link("商铺详情").Click
'详情
i=i+1
If i=3 Then
i=21
End If
Call hjq(i)
Loop
录制action1,在step->action properties中设置该action为reuseable action
录制action2,在inser->call to exiting action,选择action1
OK
在keyword view中设置对象的value为参数,并设置值
With Browser("XX项目_2").Page("XX项目")
With .Frame("wap_2")
.WebEdit("key").Set "1"
.WebButton("搜").Click
End With
.Frame("wap_3").Link("重新搜索").Click
With .Frame("wap")
.WebEdit("key").Set DataTable("p_Text", dtGlobalSheet)
.WebButton("搜").Click
End With
.Sync
End With
'随机读取文件中的一行
randomize
set fso=createobject("scrīpting.filesystemobject") '创建文件系统对象
set a=createobject("scrīpting.dictionary") '类似于二维数组
set file=fso.opentextfile("D:\hjq.txt") '打开文件
do while file.atendofstream<>true
m=m+1 'm记录文件中文本行数
a.add m,file.readline 'file.readline读取某行记录
loop
file.close '关闭文件
h=int(rnd*m)
msgbox "第" & h & "行: " & a(h) ,4096,"随机内容"
msgbox "第1行: " & a(1) ,4096,"内容"
msgbox "第2行: " & a(2) ,4096,"内容"
msgbox "第3行: " & a(3) ,4096,"内容"
set a=createobject("scrīpting.dictionary") '类似于二维数组
a.add 0,"返回XX首页"
a.add 1,"返回XX首页"
a.add 2,"返回XX首页"
a.add 3,"返回XX首页"
For i=0 to 3
With Browser("XX项目").Page("XX项目")
With .Frame("wap")
.WebEdit("key").Set "1"
.WebButton("搜").Click
End With
.Frame("wap_2").Link(a(i)).Click
.Sync
End With
Next
set fso=createobject("scrīpting.filesystemobject") '创建文件系统对象
set a=createobject("scrīpting.dictionary") '类似于二维数组
set file=fso.opentextfile("D:\hjq.txt") '打开文件
wait(2)
do while file.atendofstream<>true
With Browser("XX项目").Page("XX项目")
With .Frame("wap")
.WebEdit("key").Set file.readline
.WebButton("搜").Click
End With
.Frame("wap_2").Link("返回XX首页").Click
.Sync
End With
loop
file.close '关闭文件
Dim aasplit
set fso=createobject("scrīpting.filesystemobject") '创建文件系统对象
set file=fso.opentextfile("D:\hjq.csv") '打开csv文件
wait(2)
Do while file.atendofstream<>true
aasplit=split(file.readline,",")'用,分割字符串
For i=0 to UBound(aasplit)
With Browser("XX项目").Page("XX项目")
With .Frame("wap")
.WebEdit("key").Set aasplit(i)
.WebButton("搜").Click
End With
.Frame("wap_2").Link("返回XX首页").Click
.Sync
End With
Next
loop
file.close '关闭文件
1, 进入object identification
2, 在enviroment中选择web
3, 选择某个test object class,如browser
4, 添加mandatory properties
5, 确定
6, 重新录制脚本
7, OK
set fs =createobject("scrīpting.filesystemobject")
if (fs.fileexists("c:\hjq.txt")) then
set f =fs.opentextfile("c:\hjq.txt",8)
f.write chr(13)+chr(10)
f.write "hello"
f.write chr(13)+chr(10)
f.writeline "beijing"
f.close
else
set f=fs.opentextfile("c:\hjq.txt",2, true)
f.writeblanklines 2 '写入2个空行
f.write "china"
f.close
end if
QTP的基本使用函数:
1, 获取对话框相应的文字: GetVisible Text
2, 查找相应的字符串: instr (1,查找目标字符串,所查找的字符串)
3, 随机数的获取: Randomnumber.Value() 或cstr(int(Rnd*10)+1)
4, 等待函数: Wait(秒数)
5, 获取数组下标: UBound (数组名)
6, 拆分数组: Split(MyString, ",", -1, 1)
7, 可执行步骤: OptionalStep
8, 报告信息: Reporter.ReportEvent 3, "Save Step", "Out of cycle!"
9, 判断对话框是否存在: .exist
10,事件过滤函数:Reporter.Filter=过滤条件(0,1,2,3),0代表显示所有的error和warning,1,显示error,2,显示waining,3,任何error和warning都不显示。
11,循环函数:do … loop until,for…to… then next,while.
12,数据表格:DataTable,向外赋值,Dim aa = DataTable.value(“CellingName”,”ActionName”).
13,获得对象属性的三种方法GetTOProperty,GetTOProperties,GetROProperty,GetTOProperty获得程序中对象当前的属性,GetTOProperties获得当前属性所有集合,GetROProperty获得的是录制时对象所获得的属性。
14,检查点方法check和输出指定属性值output。
15,函数Descrīption,可以获得某页面同标签的属性进行操作。
16,函数nagative可以随便跳转页面到指定的URL。
17,函数Object可以获得当前页面同属性的控件。
18,函数Focus可以让控件获得焦点,函数Blur则是失去焦点,click单击,dbclick双击。
19,函数setAttribute可以设置控件属性,getAttribute可以获得属性。
版权声明:本文为博主原创文章,未经博主允许不得转载。