|
|
用户名:auuppp 笔名:帮忙淘 地区: 北京 行业:本科 |
| 日 | 一 | 二 | 三 | 四 | 五 | 六 |
我酒量一斤,跟你喝,两斤吧! 我酒量二两,跟你喝,舍命! 明明是个强人,天生一副熊样。
google adwords广告
自动化测试发展
qtp
Qtp对象识别
1、 富文本框对象的识别代码:
Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Page("欢迎登录大庆市城乡建设局办公自动化系统!").Frame("Frame").WebElement("WebElement").Object.insertAdjacentText
"afterBegin","你想要大是大非写的东西"
2、 获取页面所有多选框:
Dim
oWebChkDesc
Set oWebChkDesc = Description.Create
oWebChkDesc("micclass").value = "WebCheckBox"
oWebChkDesc("html tag").Value = "INPUT"
' 获取所有匹配描述的对象
Dim allCheck, oCheckBox
Set allCheck = Browser("Web Tours").Page("Web
Tours").ChildObjects(oWebChkDesc)
For i = 0 to allCheck.Count - 1
Set oCheckBox = allCheck(i)
oCheckBox.Set "ON"
Next
3、 设置对象:
Set objecta=Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Page("登录").Image("login_input")
4、 相对路径
Browser("登录").Dialog("选择文件").WinEdit("文件名(N):").Set PathFinder.Locate ("..\党组审批单\中标通知书33.doc") '
5、 键盘操作
set os = CreateoBject("wscript.shell")
os.sendkeys "{DOWN}"
os.sendkeys "{DOWN}"
os.sendkeys "{DOWN}"
os.sendkeys "{ENTER}"
6、 QTP10的破解方法与之前版本类似!
1、从HP官方网上下载QTP10.0并安装。
2、安装成功后,在C:\Program
Files\Common Files\Mercury Interactive下创建文件夹:License Manager
3、将破解工具mgn-mqt82.exe复制到C:\Program Files\HP\QuickTest Professional\bin下。
4、运行mgn-mqt82.exe,ok,关闭。
5、用记事本打开License
Manager下的lservrc文件,将第一行#前的代码Copy。
6、将代码复制到license向导中的license输入的地方,点击完成就可以了。
恭喜成功了!
http://h30302.www3.hp.com/prdownloads/T6510-15063.zip?ordernumber=380454070&itemid=1&downloadid=33606114&merchantId=HP_DOWNLOAD_CENTER&dlm=ON
7、 安装qtp10的补丁QTP_00626.exe才能进行调试工具debugger的安装
8、 函数:
Function login (username,password)
Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Navigate "http://192.168.100.6:8080/OA/login.jsp"
Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Page("登录").WebEdit("accountName").Set username
Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Page("登录").WebEdit("passWord").Set password
Browser("欢迎登录大庆市城乡建设局办公自动化系统!").Page("登录").Image("login_input").Click
End Function
call login ("liuyuwei","1")
9、 打印变量:msgbox(title)
10、 得到动态值:
Browser("oa").Page("oa").Frame("mainFrame_5").WebTable("请示标题").GetROProperty("text")
11、
set desc = Description.Create
desc("micclass").Value = "WebElement"
ocount = Browser("oa").Page("oa").Frame("mainFrame_4").ChildObjects(desc).count '取出webelement数量
msgbox(ocount)
set obj1 = Browser("oa").Page("oa").Frame("mainFrame_4")
for i= 0 to ocount-1
text = obj1.GetROProperty("innertext")
Print text '打印所有WebElement的innertext
msgbox(text)
Next
12、 读取excel
DataTable.ImportSheet PathFinder.Locate("..\施工图审查备案审批配置\施工图审查备案审批配置1.xls"),"sheet3","施工图审查备案审批配置"
Dim i,RowCount ' 定义变量
i = 0 ' 赋初值
Rowcount = DataTable.GetSheet("施工图审查备案审批配置").GetRowCount'主程序调用时使用
'Rowcount = DataTable.GetSheet("表单管理").GetRowCount'该脚本单独执行时使用
Do While(i < RowCount)
i = i+1
DataTable.SetCurrentRow(i)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_4").WebButton("新增审批权限").Click
wait(2)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_7").WebList("xmszd").Select DataTable("项目所在地",dtLocalSheet)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_7").WebList("xmtzr").Select DataTable("项目投资人",dtLocalSheet)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_7").WebList("tdyt").Select DataTable("土地用途",dtLocalSheet)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_7").WebList("blbm").Select DataTable("审批部门",dtLocalSheet)
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe_7").WebButton("确定").Click
wait(1)
loop
13、 打开程序,比如:
SystemUtil.Run ("C:\Program Files\Internet Explorer\IEXPLORE.EXE")
14、 利用mst(mercury script template)生成脚本模板
新建文件ActionTemplate.mst(必须是这个名字)
用记事本打开该文件
编辑内容,如:
' ======================================
' 模块名称
' 软件名称
' 作者:
' 日期:
' ======================================
将该文件剪切到QTP的dat目录下
启动QTP,新建脚本时就能够看到该模板被自动应用了
15、 描述性编程参数:
Browser("大庆市建设行业信息化系统").Page("大庆市建设行业信息化系统").Frame("mainframe").Link("text:="&projectName,"name:="&projectName).Click
16、datatable.importSheet
由于QTP内嵌了类似Excel表格的DataTable数据表,那么使用Excel文件为QTP脚本传递测试数据也就变得顺理成章的事情了。
将Excel中的各个Sheet的数据导入到QTP数据表中,就需要用到QTP提供的导入函数:DataTable.ImportSheet(FileName, SheetSource, SheetDest),第一个参数为导入的文件名称及路径,SheetSource即导入Excel文件中的那个Sheet名称,SheetDest即为QTP的数据表中的某一个SheetName,这个Sheet可以为某个操作的ADTSheet名称,也可以为NewSheet名称。
提示:导入的数据在测试运行的过程中是可以看见的,但是当测试运行完成后,导入的数据也会消失。这个属于Run-Time DataTable
具体的脚本实现如下:
导入到本操作数据表中
Call
DataTable.ImportSheet("C:\Data.xls","Global","Action1") / * 导入Data.xls文件中的Global数据表的数据于本地数据表“Action
导入增加的Sheet中
DataTable.AddSheet(“NewSheetName”)
Call DataTable.ImportSheet("C:\Data.xls","Global"," NewSheetName ") / * 导入Data.xls文件中的GlobalSheet表的数据于新建数据表“NewSheetName”中, * /
如果你的全部数据都保存在Excel文件中,可以使用一下语句:
DataTable.ImportSheet(FileName) // 直接导入 到本测试的数据表中,GDTSheet对应于文件中的GlobalSheet的数据,其他的都依次存放。
那么数据的导出就和导入差不多了,只是参数少了一个而已
DataTable.Export(FileName) // 把测试数据表的数据全部导出到文件中
DataTable.ExportSheet(FileName, DTSheet) // 把测试数据表中 名称为 DTSheet 的数据表Sheet 的数据导入到文件中