google搜索 51Testing站内搜索                    软件测试门户 | 软件测试培 训 | 文章资料精选 | 软件测试论坛 | 软件测试博客 | 测试招聘求职 
打印

描述性编程VS 对象库

本主题由 testing 于 2008-8-10 16:26 移动
精华区好虽好,帖子质量高,但是人气没外面的旺啊,很多人不习惯进精华区的!

TOP

不错不错,比较赞成yabest

TOP

法国改革

TOP

太精彩了sdlkfj3

TOP

对象库和描述性编程配合使用,在对你要进行测试的测试项进行脚本设计的时候,最好优先使用对象库录制,碰到识别困难的控件可以使用描述性编程来找到最容易标识对象控件的元素来写脚本,总之达到了对测试点很好的测试就可以了。。

TOP

看完了,受益了,顶一下

TOP

欢迎访问我的博客:http://tester2test.cnblogs.com
测试者家园:http://tester2test.5d6d.com
我的作品:《软件性能测试与LoadRunner实战》

TOP

唉,这么精彩的帖子今天才发现,看来要多来精华转转~

Browser("Browser").Page("Page").WebTable("WorkList").SetTOProperty("innertext", innertext_v)
Browser("Browser").Page("Page").WebTable("WorkList").SetTOProperty("index", index)
这两句话其实都可以省掉的,只要在对象库中将innertext和index两个属性点#参数化就好了,可以根据需要参数化为正则表达式或者某个环境变量,工作量差不多,不过感觉更不容易出错~

还是支持Yabest的观点的,对象库毕竟是已经封装好的东西,使用起来很方便,而且就效率来说使用对象库>=使用描述性编程,对新手来说很容易让描述性编程代码的执行效率非常低下,记得两个月前我写了个完全用描述性编程的脚本,输出100个链接花了10m+(那时候刚学不到1个月,还很生疏,vbs以前也没接触过,只能硬来。。。),后来改为用对象库,效率高了5倍多。。。当然现在再用描述性编程写个同样功能的脚本肯定不会再执行那么长时间了~

以前刚学了描述性编程,就想把所有的脚本都改写为充满描述性语言的脚本,确实费了很多功夫,唯一达到的效果就是脱离了对象库,现在想想感觉那时就像是写字时明明有手闲着不用却非要用脚。。。

现在用描述性编程最多的地方就是使用ChildObjects方法,其它地方几乎都不太用了~但依旧不可忽视它存在的价值,很多时候使用对象库能办到的,描述性编程也能以差不多的效率办到,偶尔甚至会更方便~(项目中全是这种'偶尔'情况的除外~~)

以对象库为主,必要的时候以描述性编程为辅,感觉这样运用到项目之中应该适合多数人吧~
路漫漫其修远兮,吾需努力再努力

欢迎加我MSN共同讨论QTP疑难杂症~加好友时请注明51testing~

TOP

同意楼上的!
说实在的我也不想使用对象库,但它的确好用
不想使用它是因为程序员的思维,总想一切用代码来做,不喜欢用鼠标操作呵呵

TOP

hsjzfing虽然你不是什么版主,但每次的回帖都能让人很臣服的确佩服,跟你后面也学了不少东西,哈哈大家就别争论了还是帮我看看我发表的话题吧半天都没人回复:
http://bbs.51testing.com/thread-95081-1-1.html

TOP

个人观点:
对象库和描述性编程没有好坏之分,只有是否合适之分.我个人认为对象库是适合大多数情况的,也就是说应该以对象库为主.比方说我曾经做过一个项目,在一个窗体中有87个编辑框,并且要一一验证是否可编辑,如果是把所有的对象都加入到对象库中显然不太好,所以这时用描述性编程就会比较好,

[ 本帖最后由 lantianwei 于 2007-10-31 10:10 编辑 ]
性格决定命运,气度决定格局!
个人网站-http://www.lantianwei.com
欢迎大家访问!

TOP

接上(按错了一个键没写完)
而且我只用一句话就可以代替这87个对象,效率很高吧!但描述性编程只适合少数情况下,并且在这些少数情况下才能发挥最大的效果.
性格决定命运,气度决定格局!
个人网站-http://www.lantianwei.com
欢迎大家访问!

TOP

引用:
原帖由 lantianwei 于 2007-10-30 20:03 发表
接上(按错了一个键没写完)
。。。
想多发一个帖子,多骗点积分就直说嘛!

还找这么烂的借口,说什么按错键了,按错键你可以再编辑帖子继续写啊!

TOP

51testing测试培训中7天的课是QTP(其中不少时间其实是在介绍vbs),其中就有介绍到参数化能应用到的几处地方,而其中之一就是对象库中对象属性的值~~~(至少songfun老大的课是讲到了的)

而QTP提供的这个参数化功能似乎被大多数人忽视掉了,于是很多时候就产生了描述性编程能轻易完成使用对象库很麻烦才能完成的需求的错觉~

并不是使用对象库做不到,而是大多数人没认识到如何简便的使用对象库去做到罢了~
少数情况下描述性编程的优势是存在的,只是不在于91-92楼所举的例子~
路漫漫其修远兮,吾需努力再努力

欢迎加我MSN共同讨论QTP疑难杂症~加好友时请注明51testing~

TOP

最近做了一个QTP的项目,因为QTP9.2没有共享对象库,所以自己也懒的一个个添对象到对象仓库中去,于是就用了描述性编程,刚开始觉得挺方便的,就用描述性编程做了一个模块,但到后期发现问题来了,因为项目还不稳定,老是改UI对象,而每次跑时总要再到脚本里面去改,对于我来说可能修改起来还算方便,因为是我开发的,对脚本都比较熟悉,而我的自动化脚本以后是用来给手工测试人员来用的啊,他们会知道在哪里修改吗?我想他们即使可以找到,也要花很大的力气.对于后期项目的维护,描述性编程真是太麻烦了!我不知道是我的描述性编程用的不对还是怎么的,我对描述性编程真的有点失望,如果哪位大哥大姐可以告诉我如何可以对描述性编程进行很好的维护,小弟感激万分!不过暂时我还是用对象库吧.
性格决定命运,气度决定格局!
个人网站-http://www.lantianwei.com
欢迎大家访问!

TOP

呵呵,明白QTP搞对象库的意义了吧,集中、统一、清晰简洁的管理对象描述,避免重复、冗余、混乱的在脚本里写对象描述!

其实QTP9.x也是支持共享对象库的,但是比QTP8.x退步的是,它不支持直接录制添加对象到共享对象库(手工抓取添加的除外),而只能直接录制添加对象到Action对象库。

这有个变通的方法,就是只在一个固定的Main Action里录制、添加脚本,然后将Main Action的对象库export成共享对象库供各个Action使用,将Main Action里的脚本分散复制到各个Action里,各个Action只用来运行,不在里面做涉及对象库变化的修改。只是这样麻烦很多。

目前我们还是用QTP8.2!

TOP

用了一阵对象库,总觉得多了个对象库以后维护会比较麻烦
所以后来又用描述性编程.效率的确没有以前高了
这篇帖子也让我发现自己认识的错误
不过还是先用用看吧,如果维护起来真的很麻烦那就再修改了

TOP

,今天才看到这么好的帖子阿。

TOP

不管怎么样   两者 结合起来是很不错的! 很适合我们这样的新手的!
等以后有能力了!再好好的说吧!

TOP

好帖!都是高手实践经验的总结,学了不少.
我还是比较喜欢用对象库

TOP

 
当前时区 GMT+8, 现在时间是 2008-10-7 01:23Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹