`
阅读更多

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中出现控件调用,那么必须确保该控件在相应的Actionobject 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 viewCommand中执行命令,如重新执行已经执行过的命令,修改变量的值等等。

如: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应用技巧

    VBS&QTP应用技巧

    关于如何使用QTP技巧

    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使用127问

    总结QTP使用常用技巧,很实用很全面的一个文档

    QTP8.0使用手册(简体)

    当你完成此手册学习之后,你可以对QTP有基本的认识,并将你所学习到的技巧,应用到你的测试工作中

    QTP-设置相关技巧收集

    QTP-设置相关技巧收集 希望大家接着丰富这个集合哦

    QTP training

    描述QTP使用技巧,在使用过程的实践经验等.

    精通qtp自动化测试技术领航

    掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。第3章和第4章让读者深度掌握...

    精通qtp——自动化测试技术领航

    掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。第3章和第4章让读者深度掌握...

    QTP中文教程

    主要讲解QTP的使用,及一些应用技巧,并有些实例可以供读者参考,适合刚入门的读者,

    在QTP中使用描述性编程.txt

    本资源讲述了在QTP中使用描述性编程,使用技巧等,并有部分语句修改例子,方便参考

    精通QTP:自动化测试技术领航(余杰 赵旭斌) [高清扫描版]

    掌握了这些基本技能后就可以进入第2章的学习,里面涵盖了大量真实的模拟项目的例子,以及做项目时需要的一些QTP技术和技巧。学通这两章,读者就可以独自承担起自动化测试的脚本开发工作。 第3章和第4章让读者深度...

    QTP使用技巧

    1.runaction后面能不能接变量(动态调用action,所以从数据库取数据做action名字了,但是调用总是找不到)?A:脚本中原有RunAction"testbase[case1]",oneIteration把引号中的内容放到Glo  1.runaction后面能不能接...

    QTP系列经典讲座集锦

    巅峰之作-QTP系列经典讲座集锦,讲解了QTP如何使用以及,在使用过程中需要注意哪些问题,同时,介绍了QTP相关的使用技巧

    QTP 学习资料打包

    QTP 学习资料打包 包括 oldsidney QTP学习笔记、 QTP技巧和实用函数、 VBS脚本语言、 VBS函数速查、 QTP EXCEL函数、 QTP学习笔记、 QTP学习历程、 QTP常用方法

    QTP自动化测试权威指南 word版

    QTP自动化测试权威指南word版 测试界公认的自动化测试QTP第一书 获得最佳自动化测试图书大奖 权威性讲解了QTP的基础知识和高级技巧 讨论了针对创建一个复杂的自动化测试框架的几乎所有内容。

    QTP描述性编程技术集锦

    笔者对于QuickTest Professional相对较为熟悉,希望有机会向大家逐步介绍QuickTest Professional中的一些要点及技巧。在本文里主要介绍了QuickTest Professional中的一项核心内容Descriptive Programming,希望对...

    QTP技术集锦(.doc格式)

    QTP使用中的各种技巧、常用函数等,内容丰富,均从网上搜集而来,整理为.doc格式的文件

Global site tag (gtag.js) - Google Analytics