• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

QTP基础代码

发布: 2008-5-28 21:43 | 作者: 网络转载 | 来源: 网络转载 | 查看: 374次 | 进入软件测试论坛讨论

领测软件测试网

1 生产随机数列
第一种方法

CODE:

randomize'更新反回的数据
funcation rand(k,n)
n=int((k-1)*rnd+1)
rand=n
end funcation

第二种方法

CODE:

n=randomnumber.value(1,255)

2  当运行到表中的某一行,自动导出表中的所有数据

CODE:

row=datatable.getcurrentrow
if row="5" then
  datatable.export("d:\data.xml")
end if

3

CODE:

webedit("txtpass").setsecure"sdsdf...."

如果参数化密码,可以直接在数据表中写入未加密的密码,它会自动识别,即不用把setsecure改为set
4 如果弹出对话框就获取上面提示信息并与表中的信息对比,不统一证明弹出的提示出错,主要用来验证

# 判断一个窗口是否存在
if(Dialog(dialog_name).exist=true) then
else
end if
判断一个窗口是否激活
if(window("window_name").active=true) then
else
end if
导入一个EXCEL表
datatable.Import(excel_name)'将该excel文件中的表全部导入
datatable.ImportSheet(excel_name,sheet_name)'导入excel中名字为sheet_name的sheet表
导出一个EXCEL表
datatable.ExportSheet(excel_name,sheet_name)或
datatable.ExportSheet(excel_name,sheet_index)
获取表中当前的行数
datatable.GetCurrentRow
获取表中总行数
datatable.GetRowCount
返回EXCEL中表的数量
DataTable.GetSheetCount
获取运行的表中的某个值或者设置该值
DataTable.Value(colume_name,sheet_name)'获取colume_name列中的当前光标处的值
DataTable.value(colume_name,sheet_name)=New_Value'设置新值

DataTable.GetSheet(sheet_name).GetParameter(colume_name).valueByRow(n)

判断当前光标是否处于最后一列
iRow=datatable.getCurrentRow
if(dataTable.value(sheet_name).GetParameter(colume_name).ValueByRow(iRow)<>expected_value) then
for iRow=0 to iRow<datatable.getRowCount
rowNum=iRow
next
end if
获取一列数据
DataTable(colume_name,sheet_name)
'一个登陆的对话框,首先为一个错误的判断,后来输入正确的值点击button_name按钮
Dialog(dialog_name).WinEdit(login_name).set login_wrongname
Dialog(dialog_name).WinEdit(login_pwd).set login_wrongpwd
Dialog(dialog_name).Dialog(wrongdialog_name).WinButton(button_name).click
Dialog(dialog_name).WinEdit(login_name).set login_correct_name
Dialog(dialog_name).WinEdit(login_pwd).set login_correct_pwd
Dialog(Dialog_name).WinButton(button_name).click

window的方法和属性
window(win_name).active

 

CODE:

 if browser("web_name").dialog("dialog_name").exist(1) then'如果不出现=false
     error_message=browser("web_name").dialog("diaglog_name").static("用户密码错误!".getRoproperty("text")
   if error_message<>(datatable.value("error_info"))then
         msgbox(error_message)
      end if
     browser("web_name").dialog("diaglog_name").close
  end if

这里我总结了两点技巧:
  一是:对于dialog中,虽然提示信息对象名称是"用户密码错误",但如果信息对象名称是“该用户不存在”,不用更改会自动识别,我想主要是录制第一遍时,“用户密码错误”只是让运行时能找到这个控制,而不管它是什么内容,因为在对象仓库中,text不是决定该对象的属性
    二是:如果对于提示信息比较长的,可以用mid(error_message,n,m)取一部份特征提示信息进行验证,这样我想可以节省处理时间,又可以避免长度以及空格等字符的处理

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: qtp QTP 代码 基础

51/512345>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网