11.如何能记录到页面的校验码?(Output
value能不能得到web页面的校验码,一般的校验码是由图片随即生成的 ,用QTP怎么录脚本在登陆前得到校验码并输入到校验码一栏)
A:1)一个很简单的方法:测试时叫开发屏蔽掉检验码的功能后,再录制脚本。检验码的功能可以手工很简单测试出来。
2)想得到图片的校验码,唯一的方法就是跟程序员拿程序,然后自己在脚本里面写FUCNTION!
其它就要手动输入了!
12.QTP 正则表达式的帮助
13. 自动测试实施计划
1)分析实施自动化测试可能存在的风险:就是决定是否实施, 用成本
时间 效果 。。
2)制定实施的时机:也就是在什么阶段
3)研究所要测试的功能 性能
4)分析在测试中可能遇到的问题 和困难
5)预估所需要的人时和相应的硬件
7)确定负责人员和相关测试人员
6)制定详细的测试计划 方案
7)最后是执行计划
14. 一个Action里如何调用在另一个Action中定义的函数、过程(或变量、常量)
例如:
-----------------------------------
'Action_A
Public strURL
...... ......
Function QueryList()
...... ......
...... ......
End Function
------------------------------------
'Action_B
'如何调用 QueryList函数和strURL
A:1)可以把这些变量和Function放在vbs文件作为resource文件共享,在每个Action中添加该文件.
如果function中出现控件调用,那么必须确保该控件在相应的Action的object repository中是存在的.
2)定义一个可被调用的ACTION里面唯一的放一个FUNCTION
15.如何管理QTP的源代码?(QTP生成的源代码比较多,而且和环境控件都有关,假如需要多人同时开发, 请问如何管理源代码?)
A: 一个是代码你可以通过vss,cvs等来进行管理
一个是通过td或者qc的基于用例的代码管理
其实第一种方法是基于版本控制来进行的,第二种方法是基于用例管理进行的
角度不同,管理方法也不同,不过团队协作需要的大家分工明确,进度控制。代码管理可以借鉴开发的方法。
16: 脚本不能回放,IE中的AtiveX设置有问题??
A: TOOL---OPTIONS----Ative screen
然后点开advanced..,把LOAD ACTIVEX CONTROLS打勾
TOOL---OPTIONS----Ative screen
然后点开advanced..,run
scrīpts-->disabled!
17 .如何参数化link
Browser("Browser").Page("Page").Sync
Browser("Browser").Navigate
"http://www.51testing.com/cgi-bin/index.php"
Browser("Browser").Page("51Testing 软件测试论坛---软件测试,软件质量工程师").Sync
Set tags=Browser("Browser").Page("51Testing软件测试论坛---软件测试,软件质量工程师").Object.links
Dim i,j, arr()
i=0
For Each element in tags
If Ucase(element.tagname)="A" and
left(element.InnerText,1)="[" Then
ReDim Preserve arr(i+1)
arr(i)=element.InnerText
i=i+1
end if
Next
For j=0 to i
Browser("Browser").Page("51Testing软件测试论坛---软件测试,软件质量工程师").Link("[ 版主讨论区 ]").SetTOProperty "Text",arr(j)
Browser("Browser").Page("51Testing软件测试论坛---软件测试,软件质量工程师").Link("[ 版主讨论区 ]").Click
Browser("Browser").Back
Next
这段代码先是打开一个空的页面,然后输入url.
到达论坛首页。
然后得到所有版面的名称,也就是link的名称。
存到数组里面。
然后使用SetTOProperty更换录制时候录下的link的属性。
这时候再click
18. QTP
在Debug状态,在Export View
区域不能写入任何东西
A:
如果你的目的是在debug过程中修改已执行过的命令,可以在Debug view的Command中执行命令,如重新执行已经执行过的命令,修改变量的值等等。
如:Window("Flight Reservation").WinEdit("Name:").Set
"51testing"
已经执行,如果现在想修改“51testing”为“testing”,可以在command中执行
Window("Flight Reservation").WinEdit("Name:").Set
"testing"
19 . 动态变化值如何获取
A:VAL=Browser("欢迎使用我的工作台").Page("欢迎使用我的工作台").Frame("managePlace_7").WebRadioGroup("userAccountId_0").GetROProperty("Value")
Browser("欢迎使用我的工作台").Page("欢迎使用我的工作台").Frame("managePlace_7").WebRadioGroup("userAccountId_0").select
val
20 .如何一一获得Table中 某栏 link 的
text?
A:通过上面link 的学习. 我终于融会贯通,完成了我的问题: 与大家共享:
//////////////////////////////////////////////////////////////////////////////////////
Browser("Login").Page("Page").Frame("contents").ViewLink("treeview").Image("Tplus").Click
Browser("Login").Page("Page").Frame("contents").ViewLink("treeview").Image("Tplus_2").Click
Browser("Login").Page("Page").Frame("contents").ViewLink("treeview").Link("开课设置").Click
Browser("Login").Page("Page").Frame("main").WebList("drpStatus").Select
"任意"
Browser("Login").Page("Page").Frame("main").WebButton("查找").Click
Browser("Login").Page("Page").Sync
Dim finded,findCode,Nowout
'define a constrat for find
findCode = 110901
finded = false
Function MaxPage(pageString)
'msgbox pageString
Dim ilen,i,j
ilen = len(pageString)
i=ilen
While i>0
j = mid(pageString,i,1)
'msgbox j
If instr("123456789",j)>0 Then
MaxPage = j
'msgbox MaxPage
Exit function
End If
i=i-1
Wend
End Function
Dim trowcount,maxp
trowcount =
Browser("Login").Page("Page").Frame("main_8").WebTable("开课代码").RowCount
msgbox "Rowcount: "&trowcount
Nowout = Browser("Login").Page("Page").Frame("main_8").WebTable("开课代码").GetCellData(trowcount,1)
Nowout = trim(Nowout)
maxp = MaxPage(Nowout)
msgbox "max page: "& maxp
Dim nowPage,checkid
For nowPage = 1 to maxp
If finded Then
Exit for
End If
' link to the 当前所需page
If nowpage>1 Then
Browser("Login").Page("Page").Frame("main_8").Link("[2]").SetTOProperty
"Text","["&nowpage&"]"
Browser("Login").Page("Page").Frame("main_8").Link("[2]").Click
Browser("Login").Page("Page").Sync
end if
' Get the rowcount of table in now page
trowcount =
Browser("Login").Page("Page").Frame("main_8").WebTable("开课代码").RowCount
msgbox "Rowcount: "&trowcount
'link every record in the table of the page
for i = 2 to trowcount - 2
Nowout =
Browser("Login").Page("Page").Frame("main_8").WebTable("开课代码").GetCellData(i,2)
'msgbox i&": "&Nowout
checkid = "dgCourse:_ctl" &(i+1)& ":_ctl0"
Browser("Login").Page("Page").Frame("main_8").WebCheckBox("dgCourse:_ctl3:_ctl0").SetTOProperty
"name",checkid
Browser("Login").Page("Page").Frame("main_8").WebCheckBox("dgCourse:_ctl3:_ctl0").Set
"ON"
Browser("Login").Page("Page").Frame("main_8").Link("0901").SetTOProperty
"Text",Nowout
Browser("Login").Page("Page").Frame("main_8").Link("0901").Click
Browser("开课设置详细信息").Page("开课设置详细信息").Sync
'wait(1)
msgbox "begun"
msgbox findCode
msgbox Nowout
msgbox "finished"
If trim(findCode) = trim(Nowout) Then
finded = true
msgbox "find is ok!"
wait(2)
Exit for
End If
Browser("开课设置详细信息").Close
Browser("Login").Page("Page").Sync
next
Next
21 .网页下拉框的选择
A:For i =1 to 10
Randomize
IndexNum=Int((10 - 5 + 1) * Rnd + 5)
Browser("Mercury Tours").Page("Find
Flights_2").WebList("arrive").Select "#"&IndexNum
wait(3)
Next
Sub
ChildObjects_Example()
'The following example uses the ChildObjects method to find all the
'list objects on a Web page, and then to select an item in each list.
Set ōDesc = Descrīption.Create()
oDesc("micclass").Value = "WebList"
Set Lists = Browser("Mercury Interactive").Page("Mercury
Interactive").ChildObjects(oDesc)
NumberOfLists = Lists.Count()
For i = 0 To NumberOfLists - 1
Lists(i).Select i + 1
Next
End Sub
22 .将测试数据单独拿出来
A: 取得一个
Browser("Browser").Page("").WebList("fid").GetItem
(1)
取得全部
Browser("Browser").Page("").WebList("fid").GetROProperty("all
items")
以下可以在自带的例子中实现
Window("Flight Reservation").WinComboBox("Fly
From:").Select "Frankfurt"
a=window("Flight Reservation").wincombobox("Fly
From:").GetItem(1)
reporter.ReportEvent 2,"下拉列表的值",a
23 .和TD连接
A:在QTP中不是有个Quality Center Connection,选择服务器连接,服务器处输入类似http://computer_name/tdbin,其中computer_name为服务器的名字,连接后在测试结果中添加defect就可以与TD相连了。
24 处理Windows弹出窗口
A:IF Not
Window("Flight Reservation").Exist(1) Then
'Calling open flight
If not
Dialog("Login").Exist(1) Then
Browser("管理系统").Dialog("Microsoft
Internet Explorer").WinButton("确定").Click
End If
25 .查询结果的比较
这是查询一个字段的,对查询结果多页的情况也涉及了,其实应该把所有查询字段联合起来的,也就是改改sql语句和判断条件。
[i]Set
Conn = CreateObject("ADODB.Connection")
Set Rs = CreateObject("ADODB.Recordset")
Conn.Open "Descrīption=kml-it;DRIVER=SQL
Server;SERVER=KML-IT;UID=sa;PWD=password;APP=QuickTest
Professional;WSID=KML-MICHELLE;DATABASE=kml_db"
sql="select distinct grn_no from grn_dtl where grn_no like
'%"&grnNo&"%' order by grn_no DESC"
Rs.open sql,Conn,1,3
Dim i,j,cell
i=1
j=2 'j=2 的原因是因为页面上table是的数据是隔一行一条,不知 道怎么回事,开发人员弄的怪把
Do while not rs.eof
If i=13 Then '13是每页显示出的最大行数,是个常数
i=1
j=2
Browser("::").Page("::").Frame("mainFrm_5").Link("下一页").Click
end if
cell=Browser("::").Page("::").Frame("mainFrm_5").WebTable("收货单号").GetCellData(j,2)
If cell<>rs("grn_no") Then
Reporter.ReportEvent 1,
"查询功能"&cell, "查询结果错误."
Exit do
else
Reporter.ReportEvent 0, "查询功能"&cell,
"查询结果正确."
End If
rs.movenext
j=j+2
i=i+1
Loop
rs.close
conn.close
set conn=nothing[/i]
分享到:
相关推荐
VBS&QTP应用技巧
QTP技巧
QTP常用技巧应用 1、QTP的Action间的信息共享的4种方 2、TD与QTP连接 3、QTP读取Excel数据的方法 4、QTP连接数据库 5、QuickTest Plus小工具,大作用 6、基础知识 7、对象库和对象属性 8、文件、参数表和ACTION 9、...
QTP技巧和实用函数,非常适合新人学习!
总结QTP使用常用技巧,很实用很全面的一个文档
当你完成此手册学习之后,你可以对QTP有基本的认识,并将你所学习到的技巧,应用到你的测试工作中
QTP-设置相关技巧收集 希望大家接着丰富这个集合哦
描述QTP使用技巧,在使用过程的实践经验等.
掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。第3章和第4章让读者深度掌握...
掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。第3章和第4章让读者深度掌握...
主要讲解QTP的使用,及一些应用技巧,并有些实例可以供读者参考,适合刚入门的读者,
本资源讲述了在QTP中使用描述性编程,使用技巧等,并有部分语句修改例子,方便参考
掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。 第3章和第4章让读者深度...
1.runaction后面能不能接变量(动态调用action,所以从数据库取数据做action名字了,但是调用总是找不到)?A:脚本中原有RunAction"testbase[case1]",oneIteration把引号中的内容放到Glo 1.runaction后面能不能接...
巅峰之作-QTP系列经典讲座集锦,讲解了QTP如何使用以及,在使用过程中需要注意哪些问题,同时,介绍了QTP相关的使用技巧
QTP 学习资料打包 包括 oldsidney QTP学习笔记、 QTP技巧和实用函数、 VBS脚本语言、 VBS函数速查、 QTP EXCEL函数、 QTP学习笔记、 QTP学习历程、 QTP常用方法
QTP自动化测试权威指南word版 测试界公认的自动化测试QTP第一书 获得最佳自动化测试图书大奖 权威性讲解了QTP的基础知识和高级技巧 讨论了针对创建一个复杂的自动化测试框架的几乎所有内容。
笔者对于QuickTest Professional相对较为熟悉,希望有机会向大家逐步介绍QuickTest Professional中的一些要点及技巧。在本文里主要介绍了QuickTest Professional中的一项核心内容Descriptive Programming,希望对...
QTP使用中的各种技巧、常用函数等,内容丰富,均从网上搜集而来,整理为.doc格式的文件