貌似02年才刚刚出现QTP第一个版本5.5吧?而当时国内能有几家公司做到自动化的这个程度了——我真的很惊奇,看来兄台一定有在外企工作的经验,说不定还是个CTO、架构设计总工程师。既然在班门之前,我也不敢弄斧了,以下只能说说我的个人看法:
其实框架的复用确实是很重要的一个方面,但是就本质原因而言,重用效果不理想真的只是框架设计自身的问题吗?sdlkfj6
产品大和涉及面广确实是一方面的原因,不过到底框架是要起什么样的作用其实很多人不明白(唔,我承认我也不明白,真希望得到前辈们的指点sdlkfj1 )。
自动化测试在国外的公司里,本身是被作为一个项目来进行的(听在外企工作的朋友这么说过),有成熟配套的自动化测试的项目经理、自动化测试流程、自动化测试计划……诸如此类。而我们呢,现在都是怎么做的?恐怕很多人只知道拿到一个系统,就立刻开始录制、编辑脚本、回放……
所以,如果靠个别高手去做框架设计,而没有从需求管理、变更管理、开发过程等方面的角度去介入,那“导致成本增加”也是在所难免了的。
总的来说,赞同你的观点,“不是只要可以实现就行了”,技术如果不能为应用而服务,那么终究要消亡的。测试在国内刚起步没几年,很多东西都在摸索阶段,能有相关经历的人少之又少(何况高手都很低调,恐怕不会轻易在论坛抛头露面),底蕴不足带来的任何现状都需要时间来填补的。包括Automation Framework在内。
所以需要大家多多交流,才能进步的更快。
原帖由 kingdees 于 2007-8-12 14:24 发表 http://bbs.51testing.com/images/common/back.gif
我公司有个人用了5年QTP,他和我讨论过,的确QTP的function librar可以做到代码重用!也可以轻而实现!
但是重用效果不理想, 无法实现在类被继承了N次后不修最原始代码实现需要的新功能!
他的做法是从如果新的测试需求就将代码COPY一份,然后修改!(我指的是测试框架!不是具体实现)
写出好的测试框架在易用性,高度扩展性,高度重用性有很高的要求,我公司的产品特别庞大,涉及的面很广!每次测试时需要大量的人力去修改测试代码,最后总发现原来设计的测试框架扩张性差,导致成本增加!
不是只要可以实现就行了!有谁有这方面的经历吗?
[ 本帖最后由 songfun 于 2007-8-12 23:36 编辑 ] 鄙人不才,让这位兄台见笑了:的确鄙人在国外工作了一段时间,国内工作过一段时间!
兄台尊称我为测试前辈,不敢当!我很少做具体的测试工作,大部分时间是研究开发平台,做编译器!
只是公司有个做测试的专家经常找我探讨问题,我有了解,开发和测试有相通的地方!
不过现在我们已经自己开发了一套测试工具,直接用使用JAVA语言编码,不用QTP了!
至于兄台说:"何况高手都很低调,恐怕不会轻易在论坛抛头露面",这就每个人的做人心态了!
在国外时我也经常喜欢和一些刚入行的人进行问题的讨论,我发现每次都有新的东西获得!
不瞒你说,我公司有个干了30年的程序员就经常和我讨论中国的道教思想!其实世界万物相通!
我经常会将一些新的研究项目交给一些刚毕业的研究生,甚至本科毕业生!我感觉他们做的不比
那些干的几年的差,并且创新能力很强!
在国外的公司等级不象国内明显!我也经常和李开复博士有邮件往来~!他从来没有什么好象不屑
和我交流的态度,每次都是很详细的回答我提出的问题!我最佩服李博士是他的做人非常成功,而不仅仅是技术大师!
[ 本帖最后由 kingdees 于 2007-8-13 09:52 编辑 ] 还有,兄台无需称什么前辈后辈的,如果是这样的话跟企业是一样的!
高手也是人,也要食五谷杂粮,并非个个都很古怪,有的话只是个人个性而已,
和他们相处的时候只要将胸怀放大还是很好交流的!
不卑不亢,不要小看自己,也要尊重别人,是最好的心态!慢慢的大家都成了高手!
我只是抛砖引玉!强中自有强中手,一山还有一山高!我见过的高人太多,各个领域都有,
人只有将胸怀放大才能得到别人的尊重!
我上论坛无非是为了放松一下,和大家说说话!有得罪的地方请谅解!
[ 本帖最后由 kingdees 于 2007-8-13 09:39 编辑 ] 兄台说的句句在理,受教受教。
看的出兄台是位性情中人(感叹号用了这么多sdlkfj3 ),没想到我们的QTP话题就这么谈到了人生道理上了,其实我只是就QTP论QTP而已,暂时没想过去讨论人生大道理(觉悟不够,惭愧惭愧)。
不过我的回复除了尊称你为前辈之外好像没有表示出谦卑或是怎么样的意思吧sdlkfj2 (顶多就是客气了些)
我回复你的帖子应该和“胸怀放大”也没什么联系吧,呵呵 (连“得罪”这样的词都用上了,有些夸张sdlkfj6 )
至于您所说的“国外的公司等级不象国内明显……他从来没有什么好象不屑和我交流的态度……”,本人没在外企呆过,没有资格评论,但是耳闻目睹的国内公司似乎也没什么明显的等级制吧(您形容的有些阴森恐怖了~~)?更没遇到过有什么人会“不屑和我交流”——也许是我的经历少,惭愧惭愧。
不过你这样的评论留在我的blog里挺不错,呵呵
原帖由 kingdees 于 2007-8-13 09:18 发表 http://bbs.51testing.com/images/common/back.gif
鄙人不才,让这位兄台见笑了:的确鄙人在国外工作了一段时间,国内工作过一段时间!
兄台尊称我为测试前辈,不敢当!我很少做具体的测试工作,大部分时间是研究开发平台,做编译器!
只是公司有个做测试的专家经常找我探讨问题,我有了解,开发和测试有相通的地方!
不过现在我们已经自己开发了一套测试工具,直接用使用JAVA语言编码,不用QTP了!
至于兄台说:"何况高手都很低调,恐怕不会轻易在论坛抛头露面",这就每个人的做人心态了!
在国外时我也经常喜欢和一些刚入行的人进行问题的讨论,我发现每次都有新的东西获得!
不瞒你说,我公司有个干了30年的程序员就经常和我讨论中国的道教思想!其实世界万物相通!
我经常会将一些新的研究项目交给一些刚毕业的研究生,甚至本科毕业生!我感觉他们做的不比
那些干的几年的差,并且创新能力很强!
在国外的公司等级不象国内明显!我也经常和李开复博士有邮件往来~!他从来没有什么好象不屑
和我交流的态度,每次都是很详细的回答我提出的问题!我最佩服李博士是他的做人非常成功,而不仅仅是技术大师!
还有,兄台无需称什么前辈后辈的,如果是这样的话跟企业是一样的!
高手也是人,也要食五谷杂粮,并非个个都很古怪,有的话只是个人个性而已,
和他们相处的时候只要将胸怀放大还是很好交流的!
不卑不亢,不要小看自己,也要尊重别人,是最好的心态!慢慢的大家都成了高手!
我只是抛砖引玉!强中自有强中手,一山还有一山高!我见过的高人太多,各个领域都有,
人只有将胸怀放大才能得到别人的尊重!
我上论坛无非是为了放松一下,和大家说说话!有得罪的地方请谅解!
[ 本帖最后由 songfun 于 2007-8-14 02:20 编辑 ] 老实说呢QTP这东西就是一通用化的产品,既然是产品级别而不是项目的东东对应个别公司的测试框架或者理想中的测试框架应该是毫无针对性的(产品的功能定制需要额外费用),而泛型的设计和简易的实现才是它的最大卖点.在我个人看来通用性和针对性始终不大可能调和,QTP做为通用的工具,自是不大可能在具体领域有所涉及.
[ 本帖最后由 virgozz 于 2007-8-13 15:01 编辑 ] 就企业文化而言,感觉kingder兄說的還是有道理的
好
说的好,收下了:) 原帖由 kingdees 于 2007-8-12 14:24 发表 http://bbs.51testing.com/images/common/back.gif我公司有个人用了5年QTP,他和我讨论过,的确QTP的function librar可以做到代码重用!也可以轻而实现!
但是重用效果不理想, 无法实现在类被继承了N次后不修最原始代码实现需要的新功能!
他的做法是从如果新的测试 ...
潜水很久,说点吧.呵呵.kingdees跟我的工作经历有点类似呀,我们公司的产品也很复杂,前台,后台,辅助部分的等等,为了满足TA的要求我们也开发了一个框架(一部分是自己写的,一部分是利用开源的)把公司现有的测试工具,因为产品涉及范围比较广,所以测试工具也比较多,QTP在公司现有的框架中只是作为前台TA的一个测试入口,底层采用的是一个开源工具,这样,多个测试工具之间可以通过底层平台来交换data和获得各种各样的services,用来代替部分手工测试部分.在QTP中,我们也做了不少代码重用,你说的"无法实现在类被继承了N次后不修最原始代码实现需要的新功能",要看产品的复杂程度和新功能和被测难度了,至少到目前为止,我们的基类还没有需要修改,可能是你们的产品的复杂程度超出了我的想象,呵呵.其实基类被修改,比如需要在里面增加新的function来完成新的功能,对于其它的继承类也应该不会有什么影响吧无非就是多继承了个新的function.我想这种情况应该不是很多,如果多的话,那基类的设计就应该有些小问题了.因为基类的设计当初只是满足一定阶段内产品的测试的吗.谁也不会预见到以后公司产品会有什么变化,毕竟市场指导产品嘛.所以有点修改也是再所难免的.不要指望不做修改,楼主可能也是个完美主义者.呵呵.
说说我们在TA function library里面设计吧.,尽量的最小单元化或者原子化(根据产品的不同,可能有所不一样,我们的产品是可以进行分割的.),形成最小单元,这些最小单元都可以完成一个action或者function,一些相关的最小单元可以进行组合来完成一个大的功能,这个组合可以事先写好,也可以在用单独的XML脚本进行组织,进行分层设计,并且实现数据剥离等,最小单元的组合是用XML实现的,QA可以自己去写.在出现新功能的时候去增加和完善他们自己的library.最终去执行TA的就是一个XML控制脚本,用它来负责和协调整个case的运行,负责测试环境准备,加加载数据,组织function,出错处理等等,这种方法目前实现的效果还不错.
[ 本帖最后由 EdmondYe 于 2007-8-20 09:11 编辑 ] 牛人好多啊 来的还不算晚~~牛人大把!赶紧学习~~
想请教下如何突破QTP的学习瓶颈呀!老是停留在初始水平,没甚么进展~~
非常郁闷呀!
那位前辈有好的建议呀 顶``谢谢了`收获多多`` 站在不同的高度, 看的问题也不一样, 慢慢提升吧~~