看了很多关于描述性编程的文章,没多大感觉,试着写了下,不知道函数,比如写了Browser("title:=Select a Flight: Mercury Tours").Page("title:=Select a Flight: Mercury Tours"),但是后面的就不知道该写什么了,只有多学些函数。
1、取得表格中某行某列的值GetCellData
例:飞机票取票价
shuA=Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebTable("New York to Zurich").GetCellData(3,3)
2、取距某年某月某日的天数datediff
例:计算距2008-08-08奥运天数
datediff("d",now,"2008-8-8")
3、描述性编程text:=
例:取得某页面上某文字的链接
Browser("").Page("").Link("text:=娱乐").Click
或
neirong="娱乐"
Browser("").Page("").Link("text:="&neirong).Click
4、设置动作循环:右击/actiong call properties/run on all rows
5、设置动作允许被调用:右击/action properties/general/reusable action打勾
6、判断表格是否存在:
If Browser("数商3.0后台管理系统").Page("Page").Frame("main_5").WebTable("标题").Exist then
reporter.ReportEvent 0,"pass","系统显示了所有的资讯列表!"
else
reporter.ReportEvent 1,"fail","系统没有显示资讯列表!"
end if
7、获取表格行数:Browser("数商3.0后台管理系统").Page("Page").Frame("main_5").WebTable("标题").RowCount
8、注释脚本存在位置:qtp/dat/ActionTemplate.mst
9、取本地文件名称Function ShowFileList(folderspec)
Dim fso, f, f1, fc, s
Set fso = CreateObject("scrīpting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
s = s & f1.name
s = s & " "
Next
ShowFileList = s
End Function
wenjian=ShowFileList("D:/下载/本地下载1/")
10、取本地文件删除:del= DeleFile("D:/下载/本地下载1/")
Function DeleFile(folderspec)
Dim fso, f, f1, fc, s
Set fso = CreateObject("scrīpting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
f1.delete
Next
End Function
11、关闭所有IE:SystemUtil.CloseProcessByName("iexplore.exe")
12、创建action template.
当希望在每一个新建action时都增加一些头部说明,比如作者、创建日期、说明等,用action template
来实现最简单快捷。
方法:用记事本等文本编辑器,输入如下类似的内容:
'Company: xxxx
'Author: xxx
'Product: xxx
'Date: xx
然后将文件保存为ActionTemplate.mst,并存放到QTP安装目录下的dat目录。
13、启动IE的语句:SystemUtil.Run "iexplore.exe", "http://www.***.com"
关闭IE或 其他程序的语句:SystemUtil.CloseProcessByName "app.exe"
or SystemUtil.CloseProcessByWndTitle "Some Title"
14、获取图片的名称
ObjectName = Browser(…).Page(…).Image("Find").GetProperty("Name")
15、检查某个对象是否存在,如果存在弹出对话框说明对象存在。
If Browser("Browser").Page("Page").Applet("login.html").JavaEdit("username").Exist Then
MsgBox("The object exists.")
End if
16、同步点
Browser("数商3.0制作平台").Dialog("Microsoft Internet Explorer").WaitProperty "visible", True, 120000
设置test/test settings/object synchronizationg timeout 一致
17、视图框显示为乱码时:调整原页面编码,在QTP/tools/change active screen
18、添加附件:
Browser("**").Page("**").WebFile("filePath").Click
Browser("**").Dialog("**").WinEdit("文件名(N):").Set "D:/**.jpg"
Browser("下载中心--新增下载文件").Dialog("选择文件").WinButton("打开(O)").Click
添加相应的对象
19、引用自定义环境变量
Environment.LoadFromFile "D:/询价/case/环境/huiyuan.xml"
20、环境变量有2种,一种是QTP的内置变量,一种是用户自定义的变量。内置变量是可以直接就可以用,自定义环境变量需要在菜单中选择“文件”——>“ 设置”——>“环境”,在变量类型中选择“用户自定义”,然后进行添加,可以对添加的变量全部导出,导出的文件为.xml格式的文档。既然可以导 出,那么必然可以导入.xml文件,你可以在该对话框中的选中“从外部文件导入”,然后添加其文件路径即可。(当然这些操作都可以直接使用脚本来实现, 如:Environment.LoadFromFile(“FileName”))
例如:在桌面建立一个Var.xml,如下
-<Environment> //以这个开始的内部都是定义环境变量,直到以</Environment>结束
- <Variable> // 变量定义起始标识
<Name>aa</Name> // 变量名称
<Value>11</Value> // 变量值
</Variable> // 变量定义结束标识
- <Variable>
<Name>bb</Name>
<Value>22</Value>
</Variable>
- <Variable>
<Name>cc</Name>
<Value>33</Value>
</Variable>
</Environment>
然后导入本测试的环境变量文件中,在专家视图里编写下面的脚本代码:
Dim aParam3
aParam3=Environment.Value(“aa”) // 调用环境变量
msgbox aParam3
运行测试,会输出”11”
21、Browser("creationtime:=1").close
两个页面title相同无法识别时使用描述必编辑
Browser("creationtime:=1").page(title:=****).WebEdit("name:=***").Set "***"
或Browser("creationtime:=1").page(index:=1).WebEdit("index:=0").Set "***"
22、场景恢复:
当某些提示框会在不定期时有提示时,如果自动点击确定或某些按钮
1、tools/recovery scenaril manager,制作相应的提示框和要点击的按钮,并保存
2、test/settings/recovery,添加刚保存的.qrs
23、超时设置:Setting("DefaultTimeout") =1000000
24、共享对象库:Set App = CreateObject("QuickTest.Application")
App.Test.Settings.Resources.ObjectRepositoryPath = "path"
25、取颜色 browser("b").page("p").Object.currentStyle“:.color
1、取得表格中某行某列的值GetCellData
例:飞机票取票价
shuA=Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebTable("New York to Zurich").GetCellData(3,3)
2、取距某年某月某日的天数datediff
例:计算距2008-08-08奥运天数
datediff("d",now,"2008-8-8")
3、描述性编程text:=
例:取得某页面上某文字的链接
Browser("").Page("").Link("text:=娱乐").Click
或
neirong="娱乐"
Browser("").Page("").Link("text:="&neirong).Click
4、设置动作循环:右击/actiong call properties/run on all rows
5、设置动作允许被调用:右击/action properties/general/reusable action打勾
6、判断表格是否存在:
If Browser("数商3.0后台管理系统").Page("Page").Frame("main_5").WebTable("标题").Exist then
reporter.ReportEvent 0,"pass","系统显示了所有的资讯列表!"
else
reporter.ReportEvent 1,"fail","系统没有显示资讯列表!"
end if
7、获取表格行数:Browser("数商3.0后台管理系统").Page("Page").Frame("main_5").WebTable("标题").RowCount
8、注释脚本存在位置:qtp/dat/ActionTemplate.mst
9、取本地文件名称Function ShowFileList(folderspec)
Dim fso, f, f1, fc, s
Set fso = CreateObject("scrīpting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
s = s & f1.name
s = s & " "
Next
ShowFileList = s
End Function
wenjian=ShowFileList("D:/下载/本地下载1/")
10、取本地文件删除:del= DeleFile("D:/下载/本地下载1/")
Function DeleFile(folderspec)
Dim fso, f, f1, fc, s
Set fso = CreateObject("scrīpting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
f1.delete
Next
End Function
11、关闭所有IE:SystemUtil.CloseProcessByName("iexplore.exe")
12、创建action template.
当希望在每一个新建action时都增加一些头部说明,比如作者、创建日期、说明等,用action template
来实现最简单快捷。
方法:用记事本等文本编辑器,输入如下类似的内容:
'Company: xxxx
'Author: xxx
'Product: xxx
'Date: xx
然后将文件保存为ActionTemplate.mst,并存放到QTP安装目录下的dat目录。
13、启动IE的语句:SystemUtil.Run "iexplore.exe", "http://www.***.com"
关闭IE或 其他程序的语句:SystemUtil.CloseProcessByName "app.exe"
or SystemUtil.CloseProcessByWndTitle "Some Title"
14、获取图片的名称
ObjectName = Browser(…).Page(…).Image("Find").GetProperty("Name")
15、检查某个对象是否存在,如果存在弹出对话框说明对象存在。
If Browser("Browser").Page("Page").Applet("login.html").JavaEdit("username").Exist Then
MsgBox("The object exists.")
End if
16、同步点
Browser("数商3.0制作平台").Dialog("Microsoft Internet Explorer").WaitProperty "visible", True, 120000
设置test/test settings/object synchronizationg timeout 一致
17、视图框显示为乱码时:调整原页面编码,在QTP/tools/change active screen
18、添加附件:
Browser("**").Page("**").WebFile("filePath").Click
Browser("**").Dialog("**").WinEdit("文件名(N):").Set "D:/**.jpg"
Browser("下载中心--新增下载文件").Dialog("选择文件").WinButton("打开(O)").Click
添加相应的对象
19、引用自定义环境变量
Environment.LoadFromFile "D:/询价/case/环境/huiyuan.xml"
20、环境变量有2种,一种是QTP的内置变量,一种是用户自定义的变量。内置变量是可以直接就可以用,自定义环境变量需要在菜单中选择“文件”——>“ 设置”——>“环境”,在变量类型中选择“用户自定义”,然后进行添加,可以对添加的变量全部导出,导出的文件为.xml格式的文档。既然可以导 出,那么必然可以导入.xml文件,你可以在该对话框中的选中“从外部文件导入”,然后添加其文件路径即可。(当然这些操作都可以直接使用脚本来实现, 如:Environment.LoadFromFile(“FileName”))
例如:在桌面建立一个Var.xml,如下
-<Environment> //以这个开始的内部都是定义环境变量,直到以</Environment>结束
- <Variable> // 变量定义起始标识
<Name>aa</Name> // 变量名称
<Value>11</Value> // 变量值
</Variable> // 变量定义结束标识
- <Variable>
<Name>bb</Name>
<Value>22</Value>
</Variable>
- <Variable>
<Name>cc</Name>
<Value>33</Value>
</Variable>
</Environment>
然后导入本测试的环境变量文件中,在专家视图里编写下面的脚本代码:
Dim aParam3
aParam3=Environment.Value(“aa”) // 调用环境变量
msgbox aParam3
运行测试,会输出”11”
21、Browser("creationtime:=1").close
两个页面title相同无法识别时使用描述必编辑
Browser("creationtime:=1").page(title:=****).WebEdit("name:=***").Set "***"
或Browser("creationtime:=1").page(index:=1).WebEdit("index:=0").Set "***"
22、场景恢复:
当某些提示框会在不定期时有提示时,如果自动点击确定或某些按钮
1、tools/recovery scenaril manager,制作相应的提示框和要点击的按钮,并保存
2、test/settings/recovery,添加刚保存的.qrs
23、超时设置:Setting("DefaultTimeout") =1000000
24、共享对象库:Set App = CreateObject("QuickTest.Application")
App.Test.Settings.Resources.ObjectRepositoryPath = "path"
25、取颜色 browser("b").page("p").Object.currentStyle“:.color