原帖由 yabest 于 2007-8-10 18:36 发表
可笑得都有点生气,还是等晚上消消气了再说!
————————————————————————————————————————————————————————
继续说:
视频1:测试人员在Excel里 ...
原帖由 dionysus 于 2007-8-11 10:30 发表
我认为梦醒十分上传的自动化架构视频是他逐步探索总结的一个过程,通过调用函数自动转换成描述性编程在测试过程中是十分有用的。我想lz肯定是没有做过多语言版程序的自动化测试吧。同一个网站包含FJGK多钟语言,但总体结构却是一样的,这样只需录制一遍操作之后批量转换成描述性脚本即可。这是实践出来的结果。
原帖由 梦醒十分 于 2007-8-11 11:02 发表
十分感谢LZ的批评,包括8月10日才新注册的“QTP高手”,我早知道“培训”同行是冤家,在我预料之中。
我想会有很多新注册的“QTP高手”对我进行批评,我都会“虚心”接受。
再次感谢楼主的这个贴子,它会让更多的初学者来看我的视频,“从此上当而走向QTP的弯路”,
我希望看过的人,像LZ这样多给一些直率的批评,谢谢。
原帖由 yabest 于 2007-8-11 13:30 发表
多语言版程序就更应该用对象库了!
我们测试的系统都是同时有中文、英文、日文等多种语言的。一般都是在英文版本下录制好脚本,然后只要修改对象库,用正则表达式匹配兼容其他语言版本,根本就不用修改脚 ...
原帖由 dionysus 于 2007-8-11 14:23 发表
我说一下描述性编程对多语言软件的测试吧,我这里同样也是首先在英文版上录制一遍操作,这时脚本里面记录的都是英文版的对象和属性值,之后调用 automatic framework(一个函数库,里面包含将录制出的语句自动转换为描述性编程语句的一系列函数和操作),把脚本语句中所有的逻辑对象替换成属性和属性值,通常是以index来替换。这时生成的这一套描述性编程的脚本就可以在所有语言环境下回放了。当然其中肯定还需要调试。
在对象库中使用正则表达式兼容所有语言也是一个方法,但我想它的工作量一定不小,而且还需要对正则表达式掌握较熟练的人才能操作。
使用自动化框架则可以只运行一个自定义好的函数就将所有录制的语句转换过来,对一般操作人员来说相对简单不少,不过这个框架的编写和维护也是很需要技术的。
另外lz不要动怒,这只是一个技术上的讨论和分歧,QTP提供多种方法支持回放,我们就找一个适合自己的。如果发现以后在应用中逐渐不满足了,看看其他的方法也是一种启发。练剑练气全看自己的选择,我们不用非要灭了一派吧
原帖由 dionysus 于 2007-8-11 14:23 发表
我说一下描述性编程对多语言软件的测试吧,我这里同样也是首先在英文版上录制一遍操作,这时脚本里面记录的都是英文版的对象和属性值,之后调用automatic framework(一个函数库,里面包含将录制出的语句自 ...
原帖由 yabest 于 2007-8-11 14:41 发表
啊,你转换成描述性脚本,就是为了去掉对象的其它属性,改成只用index附加属性?
可用index也太不可靠了吧,不然QTP干嘛要设置一大堆属性啊,都用index属性好了!
我说的对象库兼容,不需要用太复杂的正 ...
原帖由 dionysus 于 2007-8-11 15:45 发表
肯定不止是用index一个属性来标识对象的。在我们测试的程序通常都很有7、8个语言的版本,如果在对象库中把每一个对象的label或text都加上不同语言那是很费时间的,而且容易出错(德语的单词比其他欧洲语言要长很多,8个语言都写到一个属性值里,不知道是否有长度的限制,对于GB18030四字节的文字能否正确显示没有试过,也不太清楚)
我开始接触描述性编程的时候也对它的便捷性有过疑问,如果真是对照对象库来把脚本都一一改成描述性语句,那纯粹是胡闹,有时间没处打发了。
但后来接触到自动化框架后,觉得普通tester只需调用一个函数就能自动转换所有语句为描述性语句,确实方便快捷。
在QTP的一般应用里对象库优点很明显,甚至都无需对它做什么修改,但接触到像这种多语言版本测试时,使用自动化框架转为描述性编程,脱离语言的限制效果更好。
像我这样的QTP初学者肯定偏向于用对象库,简单明了何乐而不为。而企业级的应用或高手们的自动化框架探索则描述性编程可以发挥更大的作用吧
原帖由 dionysus 于 2007-8-11 22:17 发表
就如你举的这个例子,我可以使用GetTOProperty函数取得"OK"的index或其他属性值,最后将取得的值替换掉这个逻辑名称,生成一个新的语句,如Button("index:=1").Click这样的语句,再次回放的时候qtp就不会受语言 ...
原帖由 wtucel 于 2007-8-11 10:56 发表
感觉LZ说得有点过分了,人家抽出自己的空余时间录制了这么多实际的例子,确实给我们这些还在探索中的人开阔了很多思路,自动化框架的实践本来就是逐渐改进的过程,大家都不是傻瓜,自动化本来就是用来提高效率,舍易求难肯定会失败,所以根本不存在你说的误倒.
我觉得这里还是一个'做'与'不做'的问题,去做了,就算做出的东西是拙劣的,也总比纸上谈兵,大谈理论的强,相信大家小时侯都学过'第三只小板凳'的故事吧.
原帖由 梦醒十分 于 2007-7-20 09:43 发表
1:我讲的都是以前在项目中的亲身经历,我想经验能使人少走弯路。
2:我想传达的是一种设计思想和方法(要求是能真正理解),实不实用另说。
3:如果讲完第二期,甚至第三期,你还不理解什么是框架或还把某段框架代码看成是实用的万能工具,那么是我讲的不好。
4:如果讲完第二期,甚至第三期,你还不能自己动手用VBS或excel VBA(宏)写出类似的东东,只能向别人索取现成的,那么我白费劲了。。
原帖由 dionysus 于 2007-8-11 22:17 发表
就如你举的这个例子,我可以使用GetTOProperty函数取得"OK"的index或其他属性值,最后将取得的值替换掉这个逻辑名称,生成一个新的语句,如Button("index:=1").Click这样的语句,再次回放的时候qtp就不会受语言 ...
原帖由 QTP高手 于 2007-8-11 22:59 发表
在答复的dionyons一个问题,如果梦醒十分,是把QTP语言转化成描述性语言来写,那他就太傻了点。我想十之七八是借助了EMOS的做法,你可以去看看EMOS的源码。说起来也挺简单的!
原帖由 wtucel 于 2007-8-13 19:59 发表
我觉得用描述性编程有一个好处就是可以做到测试的前期介入,只要跟开发约定并规范好了各个控件的话,就可以在产品还没有开发出来的时候进行自动化脚本的编写.像梦醒十分的录象,tester可以根据需求来写测试用例,转 ...
原帖由 yabest 于 2007-8-13 20:35 发表
这是一个技术优点,不过还是不要这样做的好!
因为自动化测试一般只用来做回归测试,只测试已通过手工测试的、成熟的回归性用例!
你说的这一种情况,还是不要做自动化的好,等产品出来了,先做手工测试吧 ...
原帖由 loho1968 于 2007-8-13 21:26 发表
同意,如果软件没有稳定,使用自动化测试,除非你的自动化测试非常强壮。
我试验了模仿Wr的EMOS(http://www.cbueche.de/),已经全部实现了。然后对同样的测试,使用录制+修改+编程。得出如下感觉
...
原帖由 yabest 于 2007-8-10 18:36 发表
可笑得都有点生气,还是等晚上消消气了再说!
————————————————————————————————————————————————————————
继续说:
视频1:测试人员在Excel里 ...
yabest提了一些不错的观点,也看的出yabest兄弟对对象库的偏执——请允许我这么形容你:)
不过,一个高层次的QTP使用者应该“草木竹石,不滞于物”,对象库的确是一个精华,但描述性编程也有它适用的场合——没必要厚此薄彼,您说呢?
原帖由 loho1968 于 2007-8-13 21:26 发表
同意,如果软件没有稳定,使用自动化测试,除非你的自动化测试非常强壮。
我试验了模仿Wr的EMOS(http://www.cbueche.de/),已经全部实现了。然后对同样的测试,使用录制+修改+编程。得出如下感觉
1、如 ...
原帖由 qiubole 于 2007-8-14 10:38 发表
一个人拿出自己的东西出来,本来就是非常有勇气的事情。
看了好几个贴子LZ以及QTP高手的用词,感觉非常好笑,那才叫真的以小人之心。。。啥的。
对象库及描述性语言各有优缺点,结合并均衡才是王道。
加 ...
原帖由 梦醒十分 于 2007-8-16 10:07 发表
一个被测程序有几K个对象,要在7,8个语言平台上运行,你想在每个语言平台上把几K个对象都折腾进对象库?
我的方法,只给我英语平台就能做出一套通用于多语言的脚本(不用再去设置什么语言变量,也不用环境变 ...
原帖由 梦醒十分 于 2007-8-16 10:07 发表
一个被测程序有几K个对象,要在7,8个语言平台上运行,你想在每个语言平台上把几K个对象都折腾进对象库?
我的方法,只给我英语平台就能做出一套通用于多语言的脚本(不用再去设置什么语言变量,也不用环境变 ...
原帖由 dionysus 于 2007-8-16 13:12 发表
梦醒十分说的这个情况是存在的,我之前测试的就是一个有五个语言版本的web项目,PM让我们录制一套操作脚本用来做以后的冒烟测试,后期这个项目又追加了四个语言,并且新的版本中可能还会有更多国家的语言进 ...
原帖由 yabest 于 2007-8-16 13:19 发表
我对这是很感兴趣的,他又要说不说的,所以我才要追问。不是要嘲笑啥的,你别误会!
说实在的,你前面几个帖子里写的方法,我还是没看懂!
你能不能再解释清楚一下,原来对象里用text属性识别的,你怎么 ...
原帖由 梦醒十分 于 2007-8-16 14:42 发表
呵呵,没想到几个小视频引得天下大乱。
找我培训的屈指可数,却引来了大批猎头,测试人事,哥们改行做HR了,
帮失业的或想跳的兄弟找工作,总是件善事吧,不会挨砖了吧。
如您公司想招测试人员请您找我,我光 ...
原帖由 dionysus 于 2007-8-16 14:43 发表
因为这个“框架”不是我写的,我只是拿来看过,所以只能从我的理解说起,有不对的地方大家就分析着取舍吧。首先需要重新定义QTP识别对象的必要属性,将index或location或nativeclass等属性设置为必须参与识别 ...
原帖由 fennek 于 2007-8-17 11:09 发表
我说些貌似题外话的东西:
看了半天,唯独没有人肯出来说说到底什么是自动化测试框架,我建议有兴趣的人去看看STAF和SAFS里面对自动化框架的介绍:推荐Carl Nagle的文章。
链接:http://safsdev.sourceforge. ...
原帖由 marco 于 2007-8-22 09:56 发表
什么是好的自动化框架,在一国外网站看到的,觉得很有道理
什么是好的自动化框架,在一国外网站看到的,觉得很有道理
A good framework allows users who dont know anything about automation to create automated test cases.
...
原帖由 yabest 于 2007-8-17 14:37 发表
这文章以前有看过,开始期望还挺高的,可是看过后,很失望。
说实在的,我觉得这些在Excel里写伪码,或者啥数据驱动、表格驱动等方式的框架,都是花哨的,功能很受限,根本就不实用。
原帖由 fennek 于 2007-8-22 11:48 发表
简单??你看过STAF的源码吗?看过SAFS的源码吗??
应用接口简单那是正常的,总不能让我们的测试设计人员人人都是编程高手吧。
实用,啥叫实用??那是建立在会用的基础之上的。~~~~
原帖由 marco 于 2007-8-22 09:56 发表
A good framework allows users who dont know anything about automation to create automated test cases.
.
原帖由 yabest 于 2007-8-22 13:39 发表
所以不要指望有这种“good framework“, 可以”allows users who dont know anything about automation to create automated test cases.”
原帖由 yabest 于 2007-8-22 13:36 发表
看了SAFS的介绍,那是一个通用测试运行平台吧(很多公司都有这样的平台),跟我们这里讨论的简化QTP开发和维护工作的QTP自动化框架是两回事。
你都没明白我的意思!
一般而言,一个工具,功能越强,使 ...
原帖由 fennek 于 2007-8-24 14:52 发表
厚厚,说严重点,你这是扼杀人们的希望,哈哈。~~~
自动化框架如同自动化测试本身一样,它不是银弹,但起码给大多数迷失于自动化工具的人以希望啊。
原帖由 fennek 于 2007-8-24 15:06 发表
至于你所提到的简单性,我不敢苟同,“封装和固化以致失去灵活性”,貌似这几者之间没有任何联系吧,不然面向对象的开发也不会提倡什么内聚、低耦,接口抽象化之类的原则了吧。
原帖由 yabest 于 2007-8-24 16:52 发表
看贴不认真,都说了这是个度的问题,再仔细看看我的帖子吧
虽然可以想办法,做一些封装和固化,来减少使用复杂度,但相应的,却失去了灵活性。
这是个度的问题,也是两难的问题。为了使用简单,就要做封 ...
原帖由 yabest 于 2007-8-24 16:46 发表
呵呵,我是要扼杀掉人们的希望,不,应该说是现阶段不该有的奢望!
除非真正的人工智能出现,电脑也能象人那样思考,否则,还是老老实实的干活吧,别做梦了。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) | Powered by Discuz! X3.2 |