51Testing软件测试论坛

标题: [你问我来答第3期]:共同探讨QuickTest Pro(已结束) [打印本页]

作者: 默默巫    时间: 2010-8-2 09:30
标题: [你问我来答第3期]:共同探讨QuickTest Pro(已结束)
[attach]64181[/attach]
论坛ID:yujie6832
姓名:余杰
擅长领域:功能测试、系统测试、自动化测试(QuickTest Pro)
现就职于IBM GBS部门,高级测试工程师。具有3年测试经验以及多年自动化测试实战经验。
曾负责过大型证券业培训考务系统的系统测试、QuickTest Pro自动化测试以及多项web核心系统的测试和管理工作。
现任51Testing论坛[QuickTest Pro]版版主。


各位会员可以在8月16日前以回帖的方式向客座专家提问。
(请大家围绕本期客座专家的擅长领域进行提问、探讨)
客座专家将在8月17日—8月31日为大家集中解答。
机会难得,欢迎大家踊跃提问!

作者: yujie6832    时间: 2010-8-2 09:48
希望和大家互相学习 共同进步!
希望大家多多提问,多多益善
参加这个活动的主旨是想和大家共同进步,调动气氛


#27回复#6的提问完毕
#28回复#11的提问完毕
#29回复#12的提问完毕
#30回复#13的提问完毕
#31回复#14的提问完毕
#32回复#15的提问完毕
#33回复#16的提问完毕
#34回复#17的提问完毕
#35回复#18的提问完毕
#36回复#20的提问完毕
#98回复#21的提问完毕
#99回复#23的提问完毕
#100回复#24的提问完毕
#101回复#25的提问完毕
#102回复#26的提问完毕
#103回复#38的提问完毕
#104回复#39的提问完毕
#105回复#40的提问完毕
#106回复#41的提问完毕
#107回复#43的提问完毕
#108回复#44的提问完毕
#109回复#45的提问完毕
#110回复#46的提问完毕
#111回复#47的提问完毕
#112回复#48的提问完毕
#113回复#50的提问完毕
#126回复#52的提问完毕
#127回复#53的提问完毕
#128回复#55的提问完毕
#129回复#58的提问完毕
#130回复#59的提问完毕
#61回复#60的提问完毕
#63回复#62的提问完毕
#65回复#64的提问完毕
#68回复#66的提问完毕
#69回复#67的提问完毕
#72回复#71的提问完毕
#74回复#73的提问完毕
#84回复#76的提问完毕
#83回复#78的提问完毕
#131回复#80的提问完毕
#132回复#81的提问完毕
#133回复#82的提问完毕
#134回复#92的提问完毕
#135回复#93的提问完毕
#136回复#94的提问完毕
#137回复#95的提问完毕
#138回复#96的提问完毕
#139回复#97的提问完毕
#115回复#114的提问完毕
#140回复#116的提问完毕
#141回复#119的提问完毕
#124回复#121的提问完毕
#142回复#122的提问完毕
#147回复#146的提问完毕
#151回复#148的提问完毕
#150回复#149的提问完毕
#153回复#152的提问完毕
#157回复#154的提问完毕
#163回复#161的提问完毕
#164回复#162的提问完毕
#169回复#165的提问完毕
#170回复#167的提问完毕
#172回复#171的提问完毕
#175回复#173的提问完毕
#176回复#174的提问完毕
#178回复#177的提问完毕
#181回复#179的提问完毕
#182回复#180的提问完毕
#188回复#185的提问完毕
#189回复#187的提问完毕
#195回复#194的提问完毕
#199回复#198的提问完毕
#203回复#202的提问完毕


回答的不周到的地方请大家多多包含

[ 本帖最后由 yujie6832 于 2010-9-1 09:34 编辑 ]
作者: yetties2005    时间: 2010-8-2 09:50
来支持下~
作者: yujie6832    时间: 2010-8-2 10:05
标题: 回复 3# 的帖子
谢谢哈,看了你上期的精彩回答,收获良多啊
作者: zrg9399    时间: 2010-8-2 10:05
机会难得,顶!!
作者: xinren999    时间: 2010-8-2 10:20
标题: 亲爱的版主,请您解惑~
1、低级录制和模拟录制分别在什么样的情况下使用合适,请分别举例说明。

2、qtp操作使用达到什么样的水平才算初级、中级和高级水平,请分别罗列说明。

3、像某些模块,操作流程大致如下:在模块中输入、修改某些值,相应的数据库中的某些表中的数据也会发生变化,用qtp能实现以上效果,我想判断当某些值输入时符合系统标准时判断出来,不符合标准时也判断出来,请问这块我如何编写代码?

4、请问qtp在哪种情况下频繁使用,还是说自动化测试工程师就是整个系统都用qtp工具来实现,不需要一点手工操作?

5、在您的简介中看到“曾负责过大型证券业培训考务系统的系统测试,QuickTest Pro自动化测试以及多项web核心系统的测试和管理工作”,热切希望您能提供一些您做过的系统的qtp功能测试报告(涉密的部分您可以用截图软件去掉),这样有针对性的向您提问比较好,是否能留下您的QQ号,进行实时讨论,或是您组建个群一起讨论也好~
作者: huilin.gao    时间: 2010-8-2 11:28
之前一直以为yujie是雨洁,是个女孩
作者: 楠族开心果    时间: 2010-8-2 11:46
支持下 小帅哥 我对QTP是一窍不通。。怎么学习呢?
作者: yujie6832    时间: 2010-8-2 12:30
原帖由 huilin.gao 于 2010-8-2 11:28 发表
之前一直以为yujie是雨洁,是个女孩

抱歉,造成您的困扰,我深感歉意 非常不好意思
作者: dsy851009    时间: 2010-8-2 12:59
专家好,支持下,我先想问题以后再问
作者: xinren999    时间: 2010-8-2 13:45
标题: 我又来打扰~~
请楼主说说他们的区别,并举例说明(这里是重点,请写段脚本来说明):
GetToProperty()、GetToProperties()、SetToProperty()、GetRoProperty()
作者: xinren999    时间: 2010-8-2 13:54
请问,场景恢复一般在哪些情况下会使用到,请详细举例说明,它在各种软件系统的应用中很广泛吗?就像对象识别那样常用吗?
作者: cncnily    时间: 2010-8-2 14:03
我使用qtp录制过网络游戏 想做一些回归测试的自动化测试 但是感觉使用起来跟按键精灵差不多。比如视角 面向都要一样。
大师有什么好的测试方法对于MMPRPG类游戏吗?哪方面都可以
作者: xinren999    时间: 2010-8-2 14:25
我们这里用sqldeveloper,请看附件。我用qtp链接数据库时在新建数据源的时候qtp没有找到相关的oracle驱动(见附件),请问我如何解决 ,以前链接oracle PLSQLdevelper时都没事 ,但链接sqldeveloper就不行。why?苦恼啊。
作者: jkp88888    时间: 2010-8-2 14:46
我以前用的是QTP9.2破解版,最近不好使了。我使用的时候提示license error 然后我重新安装,我选择了非seat licence这项选择,也就是第二个选项,每次点击QTP的时候都提示license check 但是每次都到了50%就不动了。请问如何解决。
ps:抱歉问了些安装的问题,但是希望能够解答,其他的高手也可以帮忙解决下。
作者: Sunny_no1    时间: 2010-8-2 15:41
请问一下大家有没有QTP学习的相关文档或视频呢,有视频更好咯,能不能拿出来分享一下呢,谢谢,共同进步~~
作者: lihc    时间: 2010-8-2 16:01
请问软件测试中预置条件是要自己去设置吗?
作者: 逸城    时间: 2010-8-2 16:13
在自学QTP,可是看了几天资料,总感觉没有实例结合着来学,进步很慢。。很迷茫,请指教该怎么做
作者: xiaoxue1506    时间: 2010-8-2 16:30
如果一个系统是基于Linux的web系统,但是测试时需要借助windows下的一个模拟工具,这种情况,可以使用自动化测试吗?
作者: yujie6832    时间: 2010-8-2 20:00
收集问题,各位继续提问
作者: lxlye    时间: 2010-8-3 08:45
qtp如何才能做基于web的flash的测试?这个我在网上找了很多,试了很多方法都不行,flash相关的动作录不下来。请问专家具体应该怎么做呢?
作者: 费斐    时间: 2010-8-3 10:24
标题: 菜单动态加载,描述性编程问题
1.if Browser().Page().Object.getElementById("1385").getElementsByTagname("SPAN").Exsit then
SET list=Browser().Page().Object.getElementById("1385").getElementsByTagname("SPAN")
msgbox list.count()
end if
执行脚本时,无输出

2.当用描述性编程控制
for i=1 to 5
CDBM=Cstr(1380+i)
if Browser().Page().Object.getElementById(CDBM).getElementsByTagname("SPAN").Exsit then
SET list=Browser().Page().Object.getElementById(CDBM).getElementsByTagname("SPAN")
msgbox list(0).innertext
end if
当CDBM="1385"时,输出的innertext和1384的一样,并且将i的最大值改为10或者是更大,从1385起的任何一个值都等于1384的innertext.

(问题出现在系统菜单都是基于角色分配动态生成的,四级菜单是个浮动框,在用qtp执行脚本时加载的三级菜单重叠,比如1380-1385,1385结束后,又有一遍1380-1385)
作者: huilin.gao    时间: 2010-8-3 10:45
原帖由 yujie6832 于 2010-8-2 12:30 发表

抱歉,造成您的困扰,我深感歉意 非常不好意思


没事没事,可爱的小男孩我也喜欢
作者: yeping1215    时间: 2010-8-3 11:12
标题: dblookupcombobox
qtp要怎么才能识别delphi 开发的dblookupcombobox之类的控件呢?
作者: sonly    时间: 2010-8-3 13:10
qtp如何才能做基于web的flash的测试?请问专家具体应该怎么做呢?
作者: xinren999    时间: 2010-8-3 15:05
qtp 可以实现将某个值参数化后 通过这个参数链接数据库的值吗? 请说说操作步骤。我在qtp中曾经设置过,也连上数据库了,但Action1就是没有数据库的那个字段值。我用的是insert->checkpoint->database chenkpoint,如果方法不对,请指正。

举例:
程序中设置一参数 name1   数据库表中有一字段name11  将数据库name11字段的列值导入到qtp中的那个参数化的name1中
作者: sd526    时间: 2010-8-3 16:33
标题: QTP获得字符串的值?
描述:用.NET开发的一个B/S结构的订单系统
首先,输入订单信息,点击【提交】,弹出一个class是Dialog,Name :Microsoft Internet Explorer的对话框,显示内容为:您的订单已经生成,订单号码是PO.005BOE022110080301。及一个【确定】按钮;
每次提交之后显示的“005BOE022110080301”都不同且唯一,我怎么样能获得正确的订单号?
备注:用QTP录制的时候只录制到对话框中的一个【确定】按钮,我在Active screen中右击“您的订单已经生成,订单号码是PO.005BOE022110080301”选择Insert  output value 到Datetable中,播放时也不成功;
(这里没办法上图片,只能这样描述了,我是qtp初学者,请高手指点)
作者: yujie6832    时间: 2010-8-3 21:46
原帖由 xinren999 于 2010-8-2 10:20 发表
1、低级录制和模拟录制分别在什么样的情况下使用合适,请分别举例说明。

2、qtp操作使用达到什么样的水平才算初级、中级和高级水平,请分别罗列说明。

3、像某些模块,操作流程大致如下:在模块中输入、修改某 ...


回复 #6:
您好,我给出的参考是:
1、首先,无论是低级录制还是模拟录制,他们都应该在正常录制模式无法满足业务需求的情况下进行操作。
模拟录制模式录制的是鼠标的操作,比如鼠标拖动这样的操作,正常录制是无法录制的,此时就可以采用模拟录制了。对了,模拟录制有2种方式的,具体我想你应该已经看到了。
低级录制模式,我个人认知的是:它在一个控件无法识别的情况下,可以使用低级录制模式,低级录制模式可以记录这个控件的坐标,从而达到目的,但是一但对象的坐标有一丝变化,那么就无法成功回放了。
总结:其实几乎没有人使用录制模式来完成自动化的工作,正常模式也不建议采用,模拟录制和低级录制模式更加不建议,并且他们都有其他的更可靠的解决办法,比如模拟录制可以用FireEvent方法来代替(具体可以百度,篇幅很长),需要用低级录制模式的情况可以用对象映射、虚拟对象、WSH配合相对坐标(abs_x,abs_y)完成、还有些特殊的甚至能结合些DOM方面的东西,比如用GetElementId方法等等,这些方法都比较常见,都比低级录制来的好,更高级的方法这里不阐述,有太多更高级、更未知的办法。

2、关于第二个问题,我直接给出我一个朋友写的文章,比较实在,说的也比较准确、精辟,基本是89不离10,链接如下:
http://bbs.51testing.com/thread-174742-1-3.html

3、比如是一个WebEdit控件,首先输入一个值,进入系统了,然后再得到这个值,判断下是否和原先你输入的值一致,一致则通过,不一致则报错,大致代码如下:
Dim valueSet:valueSet = “QTP讨论”
Browser(“XXX”).Page(“XXX”).WebEdit(“XXX”).Set valueSet
Dim valueCheck
valueCheck =  Browser("XXX").Page("XXX").WebEdit("XXX").GetROProperty("value")
If valueSet = valueCheck
        Reporter.ReportEvent micPass,"正确吗?","正确"
Else
        Reporter.ReportEvent micFail,"正确吗?","不正确"
以上是我自己“乱想”的一个系统,乱写的一段示例,仅供参考,呵呵

4、需要自动化测试的时候就可以用QTP了,或者其它任何能完成任务,达到目标的一款工具,一个自动化工程师不光要写脚本,还要写用例等很多事情,手工的操作系统也是必不可少的,大量的手动实践,确定系统的业务逻辑才能做接下来的脚本,不然脚本如果都有业务逻辑BUG,那自动化就也变成一个BUG了。

5、呵呵,项目方面的东西还是比较机密的,望谅解。不过我有一句话:就是别把自动化想的太伟大,太神秘,其实真的不是很难啦,我一直觉得,能达标目标的自动化才是好的自动化。关于群方面的事情,我在这里不方便说,有打广告嫌疑的,呵呵。

作者: yujie6832    时间: 2010-8-3 22:04
原帖由 xinren999 于 2010-8-2 13:45 发表
请楼主说说他们的区别,并举例说明(这里是重点,请写段脚本来说明):
GetToProperty()、GetToProperties()、SetToProperty()、GetRoProperty()


回复 #11:
您好,我给出的参考是:
GetToProperty()是对仓库中对象的操作,获取对象库中封装的属性

GetToPropertys()一样,区别在于它是获取所有封装的属性的值

SetToPropertys(),也是对仓库中对象的操作,是改变对象库中某个对象的某个属性的值,并且要注意的是SetTOProperty修改的对象属性是临时性的,只在运行时有效

GetRoProperty()访问的是实际对象的封装接口,即:获得当前被测对象的当前封装的属性值
新人特别要注意的是:有SetToPropertys()但是没有SetRoPropertys()

补充一个,还有一个是自身接口的,即:object.XXX

示例代码如下:
a = Browser("百度一下").Page("你就知道").Link("贴 吧").GetTOProperty("text")
b = Browser("百度一下").Page("你就知道").Link("贴 吧").GetROProperty("text")
msgbox "TO属性值为:"&a                           
msgbox "RO属性值为:"&b                             
Browser("百度一下").Page("你就知道").Link("贴 吧").SetTOProperty "text","图 片"
c = Browser("百度一下").Page("你就知道").Link("贴 吧").GetTOProperty("text")
d = Browser("百度一下").Page("你就知道").Link("贴 吧").GetROProperty("text")
msgbox "SetTO后的TO属性值为:"&c
msgbox "SetTO后的RO属性值为:"&d
Browser("百度一下").Page("你就知道").Link("贴 吧").Click
f= Browser("百度一下").Page("你就知道").Link("贴 吧").GetROProperty("disabled")
msgbox “封装接口的disabled值为:”&f         
e= Browser("百度一下").Page("你就知道").Link("贴 吧").Object.disabled
msgbox  "自身接口的disabled值为:"&e            

a:贴 吧     b:贴 吧      c:图 片        d:图 片        e:false

作者: yujie6832    时间: 2010-8-3 22:14
原帖由 xinren999 于 2010-8-2 13:54 发表
请问,场景恢复一般在哪些情况下会使用到,请详细举例说明,它在各种软件系统的应用中很广泛吗?就像对象识别那样常用吗?


回复 #12:
您好,我给出的参考是:
场景回复是自动化中非常重要的机制,在QTP里自带场景恢复功能,如果是QC+QTP的框架模式,则在QC里也有场景恢复,此时QTP的自带场景恢复功能就没必要使用了。
您说的没错,场景恢复太重要了,试想一下,自动化的最高境界无法就是没人看守也能执行测试,但是现实中往往有很多预料不到的事情发生,比如服务器当掉了,比如网络延迟了导致对象与实际页面不一致报错,但是事实上,脚本是没有错的,系统也是没有BUG的,只是他们由于不定因素导致了脚本不通过,此时有了场景恢复,那么他就会自动的帮你重新恢复场景,重新执行脚本从而达到无人值守又不至于卡隔的效果,可以让你安安心心的睡觉等等,呵呵,您还可以百度搜索这个帖子:《【软件测试自动化-QTP系列讲座 38】自定义场景恢复RecoveryFunction》,文章内有很多参考和些许扩展

[ 本帖最后由 yujie6832 于 2010-8-4 10:28 编辑 ]
作者: yujie6832    时间: 2010-8-3 22:18
原帖由 cncnily 于 2010-8-2 14:03 发表
我使用qtp录制过网络游戏 想做一些回归测试的自动化测试 但是感觉使用起来跟按键精灵差不多。比如视角 面向都要一样。
大师有什么好的测试方法对于MMPRPG类游戏吗?哪方面都可以


回复 #13:
您好,我给出的参考是:
     您才是大师 小弟没有使用QTP录制过网络游戏,以后得向您学习,请问您如何识别MMRPG游戏的对象的?请赐教
另外,视角,面向这类问题,小弟虽然玩网络游戏10年,但是真不知道如何用QTP来完成,这个太高深了!请赐教您如何用QTP录制的网络游戏,哪方面都可以

作者: yujie6832    时间: 2010-8-3 22:23
原帖由 xinren999 于 2010-8-2 14:25 发表
我们这里用sqldeveloper,请看附件。我用qtp链接数据库时在新建数据源的时候qtp没有找到相关的oracle驱动(见附件),请问我如何解决 ,以前链接oracle PLSQLdevelper时都没事 ,但链接sqldeveloper就不行。why?苦恼 ...



回复 #14:
您好,我给出的参考是:
      首先,深感抱歉 ,这个可能性太多了。而且您给出的图例非常的不全,我无法正常理解意思,这类棘手的问题也许到QTP版块能更快得到解决,毕竟我们不在您机器上的真实环境,在QTP版块,嘴巴多,好人多,如果您贴全你的问题的关键的图片,我想有可能能得到解决

作者: yujie6832    时间: 2010-8-3 22:32
原帖由 Sunny_no1 于 2010-8-2 15:41 发表
请问一下大家有没有QTP学习的相关文档或视频呢,有视频更好咯,能不能拿出来分享一下呢,谢谢,共同进步~~



回复 #15:
您好,我给出的参考是:
     我给您提供点比较好的内容较多的QTP相关文档的名字,您可以百度搜索或者在站内搜索,有下载的
1、QTP技术集锦
2、QTP9.0编程常用方法及实例心得
3、QTP实用例子
4、QTP库函数
5、Vbs脚本编程简明教程
6、vbscript.chm
7、VBScript脚本语言
8、Tarun写的几篇文章,如《共享存储的使用 (Shared Store)》、《屏幕截取与比较的COM组件》
9、框架方面,论坛内有一个网友Roby.Yi的一个自动化框架的文章也还不错
10、博客方面推荐两个,第一个是CSDN陈能技的博客,第二个是CSDN赵旭斌的博客
这两个博客都可以说是学习博客,都有很系列化的QTP指导,非常好,强烈推荐!
以上所有百度都能搜索到


[ 本帖最后由 yujie6832 于 2010-8-4 10:25 编辑 ]
作者: yujie6832    时间: 2010-8-3 22:36
原帖由 lihc 于 2010-8-2 16:01 发表
请问软件测试中预置条件是要自己去设置吗?



回复 #16:
您好,我给出的参考是:
     预置条件需要自己去设置而且是一定要设置

作者: yujie6832    时间: 2010-8-3 22:39
原帖由 逸城 于 2010-8-2 16:13 发表
在自学QTP,可是看了几天资料,总感觉没有实例结合着来学,进步很慢。。很迷茫,请指教该怎么做

回复 #17:
您好,我给出的参考是:
     我给您提供点比较好的内容较多的QTP相关文档的名字,您可以百度搜索或者在站内搜索,有下载的
1、QTP技术集锦
2、QTP9.0编程常用方法及实例心得
3、QTP实用例子
4、QTP库函数
5、Vbs脚本编程简明教程
6、vbscript.chm
7、VBScript脚本语言
8、Tarun写的几篇文章,如《共享存储的使用 (Shared Store)》、《屏幕截取与比较的COM组件》
9、框架方面,论坛内有一个网友Roby.Yi的一个自动化框架的文章也还不错
10、博客方面推荐两个,第一个是CSDN陈能技的博客,第二个是CSDN赵旭斌的博客
这两个博客都可以说是学习博客,都有很系列化的QTP指导,非常好,强烈推荐!
以上所有百度都能搜索到


另外,请参考这个帖子:http://bbs.51testing.com/thread-174742-1-3.html
相信你不会再那么迷茫,QTP不是想象中那么难,自动化也不是想象中那么伟大 希望你早日摆脱迷茫,有问题多到QTP版块发帖,那里好人很多


[ 本帖最后由 yujie6832 于 2010-8-4 10:24 编辑 ]
作者: yujie6832    时间: 2010-8-3 22:41
[quote]原帖由 xiaoxue1506 于 2010-8-2 16:30 发表
回复 #18:
您好,我给出的参考是:
既然是Web系统,那就和他架构在WINDOWS上和LINUX上没有关系了,QTP测试的是这个系统的在线平台,任何在线网站都能用QTP写脚本,前提是对象能够识别。您说的工具是什么?

作者: yujie6832    时间: 2010-8-3 22:45
原帖由 lxlye 于 2010-8-3 08:45 发表
qtp如何才能做基于web的flash的测试?这个我在网上找了很多,试了很多方法都不行,flash相关的动作录不下来。请问专家具体应该怎么做呢?

回复 #20:
您好,我给出的参考是:
Flash需要相对应的插件,可以咨询HP购买正版,也可以尝试下载Flex4的插件,网上有教程,这方面我用的不多,不过我在项目中有用旁门左道的办法解决过Flash控件的控制,我用的是mercury.DeviceReplay方法配合VK码来控制快捷键,我们项目中Flash部分可以使用快捷键,我就利用了这个特点

作者: yujie6832    时间: 2010-8-3 22:48
今晚抽空回答到这,继续收集问题。。。
作者: haven6    时间: 2010-8-4 10:49
版主好,我看过陈能技高手用QTP写的 WEB、DLL随机测试工具(猴子),思想很好,一直想改良或是加深猴子的功能,想把它写成可以直接运行C/S架构的.exe里每个功能模块的工具,这感觉有点难,但我预料到,写出来了这样的工具价值是非常大的。不知道版主是否有这样的经历或是思想点拨下 谢谢
作者: o_ocandy    时间: 2010-8-4 12:31
标题: 功能测试的
我是做功能测试的,请问下 我接下来要学些什么容易上手啊 我之前不是软件测试专业的
作者: xiaolijust5    时间: 2010-8-4 14:28
标题: 如何成为资深的测试
我刚接触测试不久,以前时做开发的,我想问下,做测试我该掌握哪些东西?谢谢哦
作者: moonpaths    时间: 2010-8-4 15:18
想请教几个问题:
1、在做Web测试的时候可能由于开发人员的编码习惯导致,很多的Browser和Page对象没有可供描述的唯一属性值,或者属性值经常变化,或多个页面的属性值一样,这样经常会导致Browser和Page对象无法识别(相比于其他控件的识别,其实这两种父对象的识别出错的可能性更大),这种情况一般是如何处理的?或者这两种父对象一般在BS结构的系统中常用什么属性来进行描述?
2、和上面一位同仁的问题差不多,在一些送测的Web系统中的提示信息经常会是Windows的提示,既class:="Dialog";Name:="Microsoft Internet Explorer"这种情况基本上也无法找到合适的唯一属性来进行描述,请问这种情况是否有更好的处理方式来处理,或者只能要求开发人员在Web系统上不允许以这种方式弹出提示?
3、之前一位做自动化测试的朋友曾经建议我用creationtime这个属性来描述一些无法描述的Browser和Page,尝试以后发现如果使用Creationtime这个属性,需要额外的增加许多代码来控制可能发生的意外情况,通常都会被一些意外跳出的页面打乱Creationtime的值,请问Creationtme属性一般在什么情况下使用比较合适,还是如同低级录制一样,是一种“没有办法的办法”呢?
4、在设计自动化测试脚本时,我比较习惯使用randomnumber()这个函数,来随机进行多个用例的编写,但是看到很多同仁的脚本思路,基本上多数是使用datatable来进行循环,可不可以请您比较一下两者的优劣呢?另外,从自动化测试成本方面考虑的话,一个具体的确定测试数据的脚本和一个使用datatable并可以随时扩充测试数据的脚本,哪种更适合一家中小型公司呢?
5、目前的公司还没有实力进行自动化测试,本人之前做过一段时间自动化,公司高层很希望能推行自动化测试,可否请您提供一些切入点的思路?(结合问题4,是需要高级人员编写一些适用度较广的脚本,并定期维护比较好;还是通过培训普及QTP初级知识通过大量不可复用的初级脚本比较好?)

问题比较多,辛苦了

[ 本帖最后由 moonpaths 于 2010-8-4 15:54 编辑 ]
作者: xyhixx    时间: 2010-8-4 15:25
呵呵  我也正在学呢 准备学的差不多了 在工作中开展一下啊
作者: mhgzs    时间: 2010-8-4 15:58
标题: 请教一下!
在测试应用程序是 怎么读取winobject中的text内容并存到datatable中啊  比如金山词霸框里的单词解释winobject(“...............view”)
作者: li216qiong    时间: 2010-8-4 16:38
专家,你好,我想请问QTP中怎么彻底的删除一个action啊,在test flow中删除了,还需要在那里做操作吗?
作者: 诸葛东明    时间: 2010-8-4 17:16
因为项目的需要在Webkit内核下进行测试,请问QTP现在有方法可以支持Webkit内核的对象获取和操作吗?
作者: angle-ying    时间: 2010-8-4 19:51
如何做客户端的自动化测试呢?这个要用到那个工具,QTP可以做吗?专家能不能具体说下方法 谢谢

[ 本帖最后由 angle-ying 于 2010-8-4 19:59 编辑 ]
作者: seqiness    时间: 2010-8-4 21:29
可以用QTP做性能测试吗?请您举例说下好吗!谢谢
作者: manli_0802    时间: 2010-8-4 22:35
麻烦,我请教下:
1.对于分层结构的web系统(页面展示,核心业务,数据分别独立的系统),是否可以使用工具进行自动化测试;

2.系统中输入数据不是人为可以控制的(系统自动采集到数据进行分析入库),有什么方法能使用工具做到页面展示的数据与采集到的数据的一致性和准确性。
作者: daijianfeng    时间: 2010-8-5 09:03
你小子升级为专家啦,恭喜啊
作者: wangyyje    时间: 2010-8-5 09:13
我问是的我现在一个公司里工作,测试都是纯手动,我想用QTP作自动的测试我要作好学习准备那
首先我介绍一人公司产品
产品已作5年已上是稳定产品:
开发是C++、MySql、java   c/s
谢谢
作者: zzxxbb112    时间: 2010-8-5 09:16
来顶下,呵呵~~~
作者: lenjuan    时间: 2010-8-5 12:42
标题: testdirector7.6 重装了下IE6.0 访问不了TD了
现在我想问下怎么解决呢 要是没有办法 怎么才能把我的数据导出来 BUG数量大 这是后期了 要提交了  现在火急中
作者: zhengxiaoxu    时间: 2010-8-5 16:52
标题: 怎么做好一个测试人员
刚做测试没多久,也不知道什么才是一个好的测试人员,做好工作,能检查出软件的BUG。这样就是好的测试人员吗?怎样才能学好测试,新手要看那些书,单纯的黑盒测试会有什么发展,我该怎么做?
作者: wangqisheng    时间: 2010-8-6 08:36
标题: 前辈
支持你!
作者: xinren999    时间: 2010-8-6 11:07
请问QTP快照功能在哪里啊? 如何打开关闭? 什么情况下运用它呢?使用频率高吗?
作者: lxlye    时间: 2010-8-6 11:48
标题: 回复 36# 的帖子
flex2和flex3插件我都试过了,都不行,协议可以选,但就是录不下flash动作,网上能试的办法都试过了,不行,可能我们的flash比较特殊?!
还没试过flex4,因为程序是用flex3做的,有时间试试。另外程序不支持快捷键。
作者: yujie6832    时间: 2010-8-6 11:55
标题: 回复 56# 的帖子
不支持快捷键的话就比较棘手了,呵呵
作者: suqing    时间: 2010-8-6 17:05
标题: QTP对Delphi的支持
我现在要测得程序都是Delphi做的,有什么办法对Delphi完全支持,或者间接的方法
作者: xiaoye_01    时间: 2010-8-7 13:46
标题: 请前辈详细回答,谢谢。
用户需求和测试需求有什么区别?
作者: susie2000    时间: 2010-8-7 19:18
问题请教:我安装完qtp9.2后,遇到了以下两个问题:

(1)试着录了一下它自带的flight,只录了输入用户名和密码,点击登录,录的过程都没问题,可是点击Run,不能回放,报以下的错误:

The test run cannot continue due to an unrecoverable error.

Failed to run script.
Descrition:找不到指定的模块。

不知道是什么原因,BHO插件已经启用了。请大家帮忙看看,我把QTP卸载重装过一次还是不行

(2)还有个问题,它还无法录制web对象,录的时候是空的,web插件已经勾上,是先打开qtp9.2,才打开web.我把9.2卸载了装10.0,也无法录web.

补充:操作系统是WIN7.杀毒软件是360.

谢谢!
作者: yujie6832    时间: 2010-8-7 20:43
回复 #60:
您好,我给出的参考是:
WIN7可能9.2不支持,你看下官网,他支持的操作系统中有没有WIN7,貌似9.2的时候是没的


[ 本帖最后由 yujie6832 于 2010-8-19 11:33 编辑 ]
作者: benben2010    时间: 2010-8-8 18:40
都说qtp是功能测试工具,我怎么感觉像是性能测试感觉啊? 像我公司只用qtp做 内存是否泄漏及gui   功能具体在哪方面能得到体现
作者: yujie6832    时间: 2010-8-9 09:24
原帖由 benben2010 于 2010-8-8 18:40 发表
都说qtp是功能测试工具,我怎么感觉像是性能测试感觉啊? 像我公司只用qtp做 内存是否泄漏及gui   功能具体在哪方面能得到体现

QTP的确可以替代某些性能测试,但是主要还是功能测试哦

[ 本帖最后由 yujie6832 于 2010-8-19 10:38 编辑 ]
作者: cncnily    时间: 2010-8-9 11:39
QTP感觉是不是只局限于网页测试这块呢?貌似没LR用途广吧?我不太了解,大师讲解下
作者: yujie6832    时间: 2010-8-9 13:03
原帖由 cncnily 于 2010-8-9 11:39 发表
QTP感觉是不是只局限于网页测试这块呢?貌似没LR用途广吧?我不太了解,大师讲解下

QTP是测试功能为主的,LR是测试性能为主的,两者之间让LR测试功能会很烂,让QTP测试性能会很烂,然后QTP当然不仅限于BS架构的,只要有插件,他支持一切,当然由于大家平时接触到的都是D版,所以以为只有以BS架构为主

[ 本帖最后由 yujie6832 于 2010-8-19 10:38 编辑 ]
作者: cncnily    时间: 2010-8-9 15:53
可以举些CS架构功能测试的实例吗?具体可以做些什么功能测试?
大师回复速度这么快我也要赶上啊
作者: janenewstart    时间: 2010-8-9 16:24
标题: 网页拼写错误有什么好的测试方法吗?
余杰你好,
我想问问网页的英文单词拼写错误有什么好的测试方法吗?谢谢!
作者: yujie6832    时间: 2010-8-9 17:10
原帖由 cncnily 于 2010-8-9 15:53 发表
可以举些CS架构功能测试的实例吗?具体可以做些什么功能测试?
大师回复速度这么快我也要赶上啊

回复 #66:
您好,我给出的参考是:
我朋友就有做医疗系统的项目,CS架构的,QTP自带的飞机订票也是CS的啊


[ 本帖最后由 yujie6832 于 2010-8-19 11:34 编辑 ]
作者: yujie6832    时间: 2010-8-9 17:12
标题: 回复 67# 的帖子
如果你觉得用自动化可以提高效率,那么应该是个不错的办法吧

[ 本帖最后由 yujie6832 于 2010-8-19 11:36 编辑 ]
作者: janenewstart    时间: 2010-8-9 17:56
标题: 自动化测试有拼写检测的工具吗?
我没有做过自动化测试哦。有什么工具可以检测吗? 谢谢!
作者: xiaoxue1506    时间: 2010-8-10 08:51
原帖由 yujie6832 于 2010-8-3 22:41 发表
[quote]原帖由 xiaoxue1506 于 2010-8-2 16:30 发表
回复 #18:
您好,我给出的参考是:
既然是Web系统,那就和他架构在WINDOWS上和LINUX上没有关系了,QTP测试 ...

感谢专家回复!我说的工具是在web系统之外的,对web上客户的订单做处理的,比如成交,取消之类的,这个工具的处理,影响到web系统中的显示正不正确,祥看:
http://bbs.51testing.com/thread-282757-1-1.html,至今无人回答
作者: yujie6832    时间: 2010-8-10 09:20
标题: 回复 71# 的帖子
可以自动化的,完全可以,我以前项目也有这方面的东西,只有后端也是WEB控件,能够识别

[ 本帖最后由 yujie6832 于 2010-8-19 10:37 编辑 ]
作者: xiaoxue1506    时间: 2010-8-10 09:37
标题: 回复 72# 的帖子
我们的后端是个桌面程序,不是web,而且是在远程服务器上的,这样也可以吗?
另外,QTP支持c++,C#吗?
作者: yujie6832    时间: 2010-8-10 11:16
原帖由 xiaoxue1506 于 2010-8-10 09:37 发表
我们的后端是个桌面程序,不是web,而且是在远程服务器上的,这样也可以吗?
另外,QTP支持c++,C#吗?

回复#73
有相应的插件就进,这个要咨询HP客服了,插件支持,就一定能做


[ 本帖最后由 yujie6832 于 2010-8-19 11:39 编辑 ]
作者: xiaoxue1506    时间: 2010-8-10 11:18
标题: 回复 74# 的帖子
非常感谢专家解答!
作者: xiaoxue1506    时间: 2010-8-10 14:25
标题: QTP如何识别JavaScript?
再向专家请教些问题:

QTP如何识别JavaScript?

今天在使用QTP录制页面时,发现文本框,下拉框,单选按钮都能录制下来,但是“login”、“submit”等按钮却无法录制进来,查看了下源码,这些按钮是由js控制的,请问下大家,怎么样才能这些按钮也录制进来呢?

另外还有个问题,对于div的录制,有什么办法能让它可以正常显示,而不重叠呢?(我在查看active screen时发现有些是重叠的)
作者: archonwang    时间: 2010-8-10 14:27
原帖由 yujie6832 于 2010-8-7 20:43 发表
WIN7可能9.2不支持,你看下官网,他支持的操作系统中有没有WIN7,貌似9.2的时候是没的


升级到10就可以了。
作者: skyzhu    时间: 2010-8-11 11:58
标题: 凑凑热闹,一直没搞定的问题
测试页面代码
<body>
<div style="text-align:center">
<input type="button" ID="get1" name="get1" value="alert" onclick="alert(1)" />
</div>
</body>

QTP执行
Browser("Browser").Page("Page").WebButton("alert").Click
时,总是会停大概2秒的时间,实际已点击,但还是在这行代码上等着
QTP 9.0  9.2  10.0    IE 6,7,8 全这样
历史原帖 http://bbs.51testing.com/thread-185027-1-1.html
作者: shanzhifeng    时间: 2010-8-11 12:34
支持哈!
作者: 晓芳    时间: 2010-8-11 15:11
标题: 请教
在没有原始系统 和需求的情况下 如何进行黑盒测试?并尽快发现错误呢?谢谢
作者: xiaoxue1506    时间: 2010-8-11 17:58
再请问下专家:

一个login的动作,但是不是通过按钮触发,而是通过<a>和click事件绑定后触发的,这个怎么才能让QTP录制进去呢?

还有一个只能用鼠标点击的pin码,qtp怎么都录制不进去,怎么办呀?
作者: lucky2313    时间: 2010-8-13 11:59
请帮忙说明一下“功能测试”和“系统测试”的界面。一般来说,功能测试作为一个测试活动,主要关注哪些内容、哪些测试类型?
多谢!
作者: yujie6832    时间: 2010-8-13 13:01
原帖由 skyzhu 于 2010-8-11 11:58 发表
测试页面代码






QTP执行
Browser("Browser").Page("Page").WebButton("alert").Click
时,总是会停大概2秒的时间,实际已点击,但还是在这行代码上等着
QTP 9.0  9.2  10.0    IE 6,7,8 全这样
历史 ...


回复 #78
我个人觉得可能是下一个对象还没同步到位,意思就是下一个要控制的对象还没有出现,要等待出现了才行。这是软件层问题,应该和QTP没有直接关系的吧我想,你手动去测试,不会停顿?


[ 本帖最后由 yujie6832 于 2010-8-19 11:41 编辑 ]
作者: yujie6832    时间: 2010-8-13 13:03
原帖由 xiaoxue1506 于 2010-8-10 14:25 发表
再向专家请教些问题:

QTP如何识别JavaScript?

今天在使用QTP录制页面时,发现文本框,下拉框,单选按钮都能录制下来,但是“login”、“submit”等按钮却无法录制进来,查看了下源码,这些按钮是由js控制的, ...

不能录制的话,试试可不可以手工添加对象,如果还不行,用SPY查属性,手工create一个对象出来,再不行试试DOM,我想总有一个行

[ 本帖最后由 yujie6832 于 2010-8-19 10:37 编辑 ]
作者: oy127    时间: 2010-8-13 13:07
标题: 回复 56# 的帖子
你好,我用qtp92录制过flex3的脚本
除了qtp上要安装flex插件外,测试代码在编译时也有一些设置的
不知你是否都有配置
作者: witcher2002    时间: 2010-8-13 17:51
小鱼~~~
混得不错嘛~~好久没上51了,一上来就看到你!
作者: zzxxbb112    时间: 2010-8-14 20:59
再来支持下。
作者: zzxxbb112    时间: 2010-8-14 21:00
专家解答的非常耐心呀,辛苦了,相信认真看完所有回帖的话一定能让处于自动化瓶颈的测友们受益匪浅。
作者: yujie6832    时间: 2010-8-15 11:06
谢谢大家的支持,呵呵
作者: 默默巫    时间: 2010-8-16 10:18
大家踊跃提问哦::ybaojc:::
作者: skyzhu    时间: 2010-8-16 10:48
原帖由 yujie6832 于 2010-8-13 13:01 发表

我个人觉得可能是下一个对象还没同步到位,意思就是下一个要控制的对象还没有出现,要等待出现了才行。这是软件层问题,应该和QTP没有直接关系的吧我想,你手动去测试,不会停顿?


任何下一步操作都会在这个按钮等待的,不管后面的代码是操作是VBS的赋值、print、msgbox、和对象无关的,都不会立即走到下一行代码
但如果不是直接页面JS弹出,而是服务器返回的script alert,脚本过程就不会有停顿,几乎肉眼看不到提示内容,速度差上几十倍
78#的页面代码是简化到最简单了,但还是这样,这也是为什么说这个问题怪而且一直没解决
alert内容是在瞬间抓到自动正则检查点的,脚本是一个对大多数页面表单的类似扫描试遍历提交的,这么每次停留个2秒大大拖长了脚本的总时间
作者: tanzugan    时间: 2010-8-16 11:19
标题: qtp自动化测试
您好 请问qtp自动化测试的主要功能是什么 还有回归测试是怎么回事?qtp的主要用途呢
作者: yulan200060526    时间: 2010-8-16 11:30
标题: 游戏测试中QTP应用的疑问
版主你啊!~
我对QTP基本没有了解,但是想学,可不知道怎么学起,因此我想问两个问题,希望能得到你的解疑!~

1、在游戏测试中,要怎么去应用好QTP
2、QTP可以提敢到WINDOWS自代的计算器中的控件,但是在游戏测试中没有办法提敢控件,在这种情况下有什么方法能更好的应用QTP来支持游戏测试中的自动测试吗。
3、游戏测试中的交互不像应用软件那样,交互的变数不大,可游戏的变数太大了。
作者: 又见蝴蝶菲菲    时间: 2010-8-16 11:53
标题: 业务数据系统应该怎么测试呢?
您好,我想问下,在没有测试用例的情况下,测试业务数据系统要怎么测试呢?
作者: 819longjiayan    时间: 2010-8-16 15:18
想问下怎样进行软件测试学习才能提高测试技术,我现在还处于主要的功能测试,想向更高层面发展,有点茫然,不知道怎么进行学习,希望你能抽空给我说说。。
作者: 星空物语_wd    时间: 2010-8-16 16:42
标题: 软件测试
如何根据文件格式来写正确的Test Case?高手指点下!
作者: hai8611    时间: 2010-8-16 17:05
标题: 请问登录平台的账号和密码有什么要求
我现在测一个平台,登录平台时,用户名和密码均是字母,现在输入用户名和密码时,无论输入的是大写还是小写都可以登录成功,请问这样的问题在测试时允许吗?
作者: yujie6832    时间: 2010-8-16 20:20
原帖由 费斐 于 2010-8-3 10:24 发表
1.if Browser().Page().Object.getElementById("1385").getElementsByTagname("SPAN").Exsit then
SET list=Browser().Page().Object.getElementById("1385").getElementsByTagname("SPAN")
msgbox list.count( ...


回复 #21
您好,我给出的参考是:
     首先纠正下,这个不是描述性编程,呵呵,既然1385输出的也是1384的innertext,那就用spy查一下想要获得的那个innertext的ID,不过建议还是不要用ID的形式,还是推荐用关键字来定位,如果是你所说的动态菜单,那可以把角色和菜单关联起来,分别判断角色后再进行对象定位。这样不管是对脚本的调式还是以后的维护都是有很大好处的。还有别忘了改exist,dom对象不能exist。


[ 本帖最后由 yujie6832 于 2010-8-18 10:12 编辑 ]
作者: yujie6832    时间: 2010-8-16 20:27
原帖由 yeping1215 于 2010-8-3 11:12 发表
qtp要怎么才能识别delphi 开发的dblookupcombobox之类的控件呢?

回复 #23:
您好,我给出的参考是:
这个目前来说只有购买相对应的delphi插件了





欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2