51Testing软件测试论坛

标题: QTP Extjs扩展插件的编写详解 [打印本页]

作者: testing333    时间: 2010-6-30 15:34
标题: QTP Extjs扩展插件的编写详解
我花费了2天时间研究了一下Extjs的工作原理。编写了一个QTP关于Extjs的插件!
(如何编写Extjs---QTP插件,具体详解内容已经纳入到3atesting自动化测试课程中,会花费一天时间详细讲解各种配置信息和编写的方法)
研究之初:对于我本人来说,我不太熟悉javascript和extjs控件!基本上没有接触过。为了做这个插件,我首先在网络上下载了一本javascript的书籍,以及下载了extjs控件环境和相应的API资料。差不多花费了一天时间来学习javascript和Extjs控件使用方法(这个时候没有必要去学究竟如何去写一个高质量js程序,关键去看看它的使用方法和原理的东西就成了)
扩展开发所涉及到的工具:
web extensibility的插件编写的可视化编辑器
:因为写Web插件的时候会编写XML文件,繁杂的配置信息手写起来非常麻烦,所以我找了一个QTP集成的编辑器
DOM跟踪插件
:主要分析DOM的结构,方便来了解跟踪什么事件以及对应的属性信息
(自动化测试设计培训中都会赠送给学员)

这些都准备好之后,我找了一个实例来着手编写Extjs插件!实例是一个ext grid,具体可以参看下面图片

  

DOM分析结果如下:


  
没有使用插件的QTP识别结果:


  

插件集成后结果:


  


然后我们进行了自定义扩展,主要是在QTP和Extjs建立了一个桥梁,然后可以实时去获取extjs控件的所有方法和信息!例如
我这里增加了2个方法:
getrowcount(获取总行数)
getcell(row,cell)获取指定单元格的数据信息
msgbox  Browser("Stateful Array Grid Example").Page("Stateful Array Grid Example").ExtJSGrid("ExtJSGrid").GetRowCount
msgbox  Browser("Stateful Array Grid Example").Page("Stateful Array Grid Example").ExtJSGrid("ExtJSGrid").GetCell(2,0)

运行结果如下:

[attach]1929[/attach]
作者: Chain.Dai.China    时间: 2010-6-30 17:26
扩展插件还有bug呢,先别学了。扩展的插件如果在html dialog里使用的时有问题。在html dialog里使用一次后,关闭html dialog,QTP 就不认识扩展插件的test object的所有的方法了
作者: abcdabcd    时间: 2010-6-30 19:44
那是你没有写好!我们现在已经借助插件进行了!很多控件的扩展!实际很简单,QTP在这个时候只是一个桥梁了!识别和运行都是自己的代码了!出了问题,主要是你代码的质量写的有问题!而不是插件的问题了!只要他的桥梁建立起来就没有QTP什么事情了!
作者: Chain.Dai.China    时间: 2010-6-30 22:38
哪里是代码有问题。你肯定没试过你自己写的test object在html dialog是不是运行正常,第一次正常,关了html dialog后test object所有的方法都不能被识别了。
作者: abcdabcd    时间: 2010-7-1 10:03
呵呵!这就是技术一样!就看各自怎么玩法了!方正我们都玩出来了!而且都很稳定!呵呵
作者: hanjj    时间: 2010-7-1 11:26
具体详解内容请给出.如何写.很感兴趣.我这里正好有一个项目是用extjs写的.
作者: Chain.Dai.China    时间: 2010-7-1 11:53
可能是我没玩好吧
作者: abcdabcd    时间: 2010-7-2 10:07
kernzhang带我们做的!你到他的网站找他吧!
作者: fqtyfz    时间: 2010-7-6 09:22
要是能有具体的实例就好了,
作者: abcdabcd    时间: 2010-7-6 09:53
他们是有的!可以找他们要哦!当时我们就是拿他的例子一步步做出来的
作者: Chain.Dai.China    时间: 2010-7-6 10:17
abcdabcd,是一楼的testing333帮你培训的?
作者: abcdabcd    时间: 2010-7-6 10:23
我们参加他们办的自动化测试框架设计课程,其中一块就是教大家如何去写QTP插件,他们讲web插件就拿extjs作为案例来讲的,dotnet插件就拿他们自己设计的框架作为案例来讲的。这门课是kernzhang讲的!呵呵!

[ 本帖最后由 abcdabcd 于 2010-7-6 10:27 编辑 ]
作者: 05_DLL    时间: 2010-7-6 12:28
原帖由 abcdabcd 于 2010-7-6 10:23 发表
我们参加他们办的自动化测试框架设计课程,其中一块就是教大家如何去写QTP插件,他们讲web插件就拿extjs作为案例来讲的,dotnet插件就拿他们自己设计的框架作为案例来讲的。这门课是kernzhang讲的!呵呵!


你就是kernzhang吧~~~
作者: NoFaceVeryMuch    时间: 2010-7-6 12:32
这个也太明显了吧~不能为了蒙骗他人培训而这样吧。。。据我所知,3A的培训貌似都是浆糊的,某张一个人代表了”他们“一个团队。呵呵,不多说了。。。
作者: abcdabcd    时间: 2010-7-6 13:47
我只知道我得到了我想得到的东西!我是参加了他6月沈阳的培训!最近公司派我到上海来出差,前2天kernzhang一次,我看到这个帖子知道是他们发的,我只是从我自己学过的角度说说。他们发帖想招人做培训这我不管,但是我上面所说的实话,是不是浆糊,我觉得这类技术培训很好评判这点?一切都靠技术来说话,比如说extjs控件识别的问题,我们当时找了很多家培训公司,都在和我们扯淡,说什么描述性编程和很多理论上以及拿出一些所谓底层高深技术来忽悠!当我们不懂QTP似的!最后我们找到kernzhang,他帮我们公司解决了我想要解决的问题。我认为我就够了以我现在和kernzhang熟悉了!说话的方式有些再帮他的味道!但是我上面说的都是我自己真实得到的东西
作者: abcdabcd    时间: 2010-7-6 13:59
顺便再说一句,我觉得现在大多培训都是在倒浆糊!我们的原则是我们把所需要的上课内容和讲师沟通!他们承诺了可以给我们解决方案我们才请,上课之后我们都给讲师评分,低于8分,(我们会和他们签合同)那么这个讲师就会死的很惨!钱基本上是得不到的!我觉得这两点做好了!那些倒浆糊的老师基本上不会有太多的活路了!毕竟钱是在我们手里!事情得由我们说了算!
作者: NoFaceVeryMuch    时间: 2010-7-6 14:28
标题: 回复 16# 的帖子
那你就是某张的托了,呵呵,当他发布这条消息时,“你”的ID和“楼主”的ID是同一天注册的,是他叫你来造势的? 如果真是学员为啥不亮亮您的大号?
很明显,我是小号,因为我是来揭穿他的,所以我不能亮大号,但是是真实的学员的话何必要亮小号?还是同一天注册?心虚什么呢???口口声声的“我们”,“我们”,怎么说话口气也和某张那么像,您6月上了培训班,7月就能融会贯通??



融会贯通的证据是:请看3楼


这么牛?已经能做项目了?某张的教学水平太神了,我对他的敬佩犹如滔滔江水,这里是51,不是3A。。。借着51造势???

有点实在看不过去了,只能来开发小号,发发牢骚,揭穿揭穿
作者: abcdabcd    时间: 2010-7-6 14:45
害!人啦!我是在google上搜索extjs qtp关键字就看到这个贴了!所以就注册了一个号帮他说说了!(但是我说的是我自己所想的)这里还有什么所谓大号小号,搞的像什么特务机关一样,有点搞笑!
更搞笑的是我们这些做项目的人,如果学会了不能用,那学着做什么!那么公司帮我们花钱让我们学着玩啊!怪不得现在很多人说培训完了,却不能在项目上用!看来楼上应该参加学不能致用的培训比较多!变成了把这种现象当作一中常态了!有点杯具。而且我们做QTP也不是一年、二年了!帮我们点通了!对于我们来说上手就不存在问题!我觉得不是kernzhang太神了!而是你对培训的要求太低了!真不知道你指的不是倒“浆糊”的应该是啥水准!呵呵!

写着写着觉得很无聊,你就当我是托好了!我觉得揭穿最好的方式就是你给同行也做一个这个方面的插件,然后给同行,然后嘲笑kernzhang一把,说他这些东西算个啥啊!还要花钱让别人参加培训!我来教大家好了!

[ 本帖最后由 abcdabcd 于 2010-7-6 15:05 编辑 ]
作者: 05_DLL    时间: 2010-7-6 15:28
1.首先发帖人kernzhang是6月30号 15:34发帖的
2.当天kernzhang被默默屋禁止发言
  原因:标题是插件扩展详解,内容却是3atesting培训广告,并声称需要参加培训才能获得内容。
3.而你当天19:44来51注册了个新号,进行回帖,并在此后一直回帖为KERNZHANG做广告。
4.搜索google搜到的?既然你都培训过了,而且会了还搜他干嘛,要搜技术也搜英文版的google,这是常识。
5.插件扩展开发技术早就不是什么新鲜的技术了,你还当宝?在安装完web extensibilty之后都有帮助文档,文档里的步骤都写的清清楚楚,直接可以学习现成的,至于上头说的QTP插件可视化编辑器其实就是HP出的QTP Extensibility Accelerator,可以进行快速开发插件。extjs只需了解js和extjs的工作原理即可进行开发。
作者: abcdabcd    时间: 2010-7-6 15:43
我确实把他当宝了!因为我根据QTP提供的帮助!我做了3天,我把他QTP的示例程序做出来了,我就是做不出来extjs识别的插件程序!最后kernzhang教我之后我做出来了!
现在搞的像侦查机关一下查这查那,你有种使用QTP Extensibility 写个extjs插件出来晒晒不就行了!光嘴强算啥水平!
(还有谁叫51testing论坛那么火呢,你去根据(extjs qtp)关键字搜搜,这个帖子在google排第几。我学会了也想摆摆,不可以吗?发现楼上就是搞得像个个大侦探似的!)

[ 本帖最后由 abcdabcd 于 2010-7-6 15:58 编辑 ]
作者: NoFaceVeryMuch    时间: 2010-7-6 15:59
今天我要彻底揭穿abcdabcd这位网友以及他身后所有的人的丑陋+绝对恶心的面目

大家来看此人一共只发过的两个帖子,另一个帖子链接:
http://bbs.51testing.com/viewthr ... p;page=1#pid1621903

帖子中,一位网友求助:QTP怎么识别GWT-exe开发的软件阿

结果abcdabcd直接给出了本贴的链接,请问,“本贴除了宣传插件培训课程有任何能解答另一个帖子问题的迹象吗?”
这么明显的意图我不说了吧,绝对的证据了,abcdabcd就是KERNZHANG本人!或者他所谓团队中的宣传者而已!

你居然还好意思回了那么多“自己编写的故事”,可笑之极!请问,某张给你多少回扣? NO FACE VERY MUCH!
作者: abcdabcd    时间: 2010-7-6 16:13
很多哦!你也想要拿!赶快去找他拿啊!靠!不断在说这些废话,刚才不是说了吗?有种就自己做个出来给同行不就行了!然后去嘲笑kernzhang一把!
(这个帖子培训宣传意图很明显,不用你说大家都看的出来!至少人家把他做出来的效果拿出来给大家看,证明他们能做出来!我参加过。我的帖子也证明这一点。你们最**方式不早就和你们说了吗,证明这个特简单,是kernzhang忽悠大家花钱去参加这种没有价值的培训,不就成了)
丑陋的应该是你们这些人吧!叫吃不到葡萄说葡萄酸,自己做不出来,只知道嘴硬!算哪门子好汉!如果只知道骂街!我有兴趣的时候,可以陪你骂骂!没时间就不会陪你玩了!不过今天下午有时间!哈哈

[ 本帖最后由 abcdabcd 于 2010-7-6 16:27 编辑 ]
作者: NoFaceVeryMuch    时间: 2010-7-6 16:27
好了,不用说了,此贴到此时已经没有任何可回复了,其实,我们真的只是看着不舒服才揭穿下的,相信有小学水平的网友都应该懂了,没人在陪你骂街,这只是你单相思的在认为而已,呵呵


21楼的证据,无解!
作者: abcdabcd    时间: 2010-7-6 16:34
说来说出!一点真格的都拿不出!有本事就做做掰!这样测试同行会有福的!呵呵!我真的想你来接受这个挑战呢!没想到现在就哑火了!
作者: Chain.Dai.China    时间: 2010-7-6 17:00
哦,原来abcdabcd这个名字叫小号
作者: abcdabcd    时间: 2010-7-6 17:46
标题: 他们忽悠了什么?
从这个帖子已开始实际对方就表明的二个意图!
1、代表他们做出来extjs插件,因为他们已经通过图片的方式量出来了
2、他们也说明了这个会在他们培训过程会详细讲解。这肯定是一个培训的宣传。明眼人都看的出来!

然后楼上几位就开始提出对方忽悠,培训是浆糊!那么他们忽悠了什么?
1、他们做不出来,然后忽悠你们去参加培训了!然后发现上当受骗了?(如果真是这样,我觉得你根本就不应该给钱,我已经说我的做法(如果你当我是托我就没招了))。我们是甲方。钱在我这,我怕什么?

如果你不是培训机构的托的话,那么你不爽在什么地方?作为我个人来说:如果我认为这个东西根本就是大家看看书就能学会的!还在这里忽悠!这会让我感觉不爽!但是这个东西从我的知识水平来说,这个不是仅仅看书就能做出来的!也许我能力差,所以希望楼上几位来证明这点,楼上几位做出来证明这个是挺简单的一个东西!那么证明我的能力很差,这个确实是一个忽悠!但是几位一直避而不谈!只是说看书就能做!那么花费那么多时间侃的话,还不如做出来证明这点呢!

如果你也是培训机构的托,然后自己那边又没有能力做出这些。借机打压的!拿只能说你们在说自己!那些词就应该用在你们自己身上
作者: NoFaceVeryMuch    时间: 2010-7-6 23:20
呵呵,本来不想回了,因为这已经没什么好回复的了。关于你说的我们避而不谈,我实在没听明白你的意思,以至于我重新看了遍所有的回帖,谁有说过看书就能做?

说到避而不谈,你到提醒了我让我问你,请问你能解释21楼的情况吗?貌似21楼之后避而不谈这个问题的是你吧?无论我们是不是其他培训公司的拖,至少现在我肯定你就是一个托!这下我看你还有没有词尽,还能不能做最后一息无力的挣扎,看清楚了,我的目的就是揭穿,就这2字而已,因为不爽!呵呵,至于动机,随便你猜测,因为我很明确且毫不隐晦的已经告诉了你我的目的!

如果你不是托,你只是一个受训者,为啥在别的帖子你也能做个广告 不知道小学生能否理解这个很复杂的理解题呢,呵呵
作者: abcdabcd    时间: 2010-7-6 23:36
很简单啊!当时是我找了kernzhang做培训的!我认识他了!而且过程中我们也成了他朋友!我是在顶他!没什么不可说的啊!我也只是说出了我们参加培训的真实感受!我所有的回复中有叫大家去参加培训了吗?而且我不断在说:钱在你们自己手里。什么事情都是由你说了算!
你要说我是托!看来我也算是托!但是我托的是他的技术!你如果牛的话,你也把技术拿出来,如果技术上能让我服你!我同样可以说服公司来请你做我们的培训!我托你也没有问题啊?什么都别说,一切都是技术说了算!
别只能说,不能做!
作者: NoFaceVeryMuch    时间: 2010-7-7 09:21
那论证就是:你是个拖!这就是我要揭穿的目的,呵呵~其他还有何好谈?是不是版主也要封了你的号?回答问题时候还要替某张做广告?51是回答人家问题的,不是来做广告的,你这种人,还有脸说那么多?我就是来损你的~


还有啊,我可不要你这种笨托来当我的托,哪有托最后还是说自己是托的啊 或者说你托的是你自己?

[ 本帖最后由 NoFaceVeryMuch 于 2010-7-7 09:31 编辑 ]
作者: xiaoshancom    时间: 2010-7-7 11:03
标题: AD贴,何必呢
如果不想分享知识就不要炒作了!

我来解密吧:
就我所了解的的,对于通用Javascript的扩展都是通过浏览器支持的JavaScript接口来封装该javascript元素的.
YUI如此、extjs如此、JQuery如此,请看示例:
Selenium and YUI buttons
http://adam.goucher.ca/?p=1478

以上跟语言无关,只要浏览器支持script接口,而通常浏览器是支持这个的。

BS拿广告炒作的人。有必要嘛! 不传播知识您就请滚蛋。
作者: 05_DLL    时间: 2010-7-7 11:55
LS是模子!支持!

51是讨论和分享知识的地方,不是给你来做广告用的,你个abcdabcd还好意思说的那么有理。口口声声技术技术,技术是拿来用的,不是拿来给你这种人玷污的~ 你以为这个世界上就没人会开发extjs插件了,牛的人多的是,像你这种人不配谈技术,人品首先就不过关。想分享就分享,做广告的就请你团成一团圆润的离开51testing~
作者: abcdabcd    时间: 2010-7-7 12:00
都是高手啊!我建议楼上来个真正的解密啊!也鄙视我一把!我花了3天时间都没搞不定。也算是够笨的!
拿个链接就说是所谓的解密,我怎么看也解不了!能够再多指点一些!害!也是真的是我笨!没看出该如何解!
作者: NoFaceVeryMuch    时间: 2010-7-7 12:07
终于觉得楼上的皮有够厚的了~不过厚皮有厚皮的好处,能残害大家兜里的钱嘛!人家可能为了你“解密”吗?你一再的提技术,说白了,不就是要人家去参加你的培训嘛!你技术高你怎么不在51发个教学贴呢?只有这样,人家才能钦佩你,不是靠你这些废话来钦佩你的,你现在只是被鄙视的对象,要发宣传贴,请远离51,还51一个清静!你在这里不受欢迎!不知道你到底还能有多少废话说下去,无非就是没理了抓着技术说下去,没人会为了你展现自己的技术,你也不会在这里展现技术不是吗?那你就别总抓着技术两个字不放了!够无聊的!也够牵强的!

你说话的破绽太多了!!!

你就是kernzhang!3A的“首席讲师”!

[ 本帖最后由 NoFaceVeryMuch 于 2010-7-7 12:10 编辑 ]
作者: 05_DLL    时间: 2010-7-7 12:23
原帖由 NoFaceVeryMuch 于 2010-7-7 12:07 发表
终于觉得楼上的皮有够厚的了~不过厚皮有厚皮的好处,能残害大家兜里的钱嘛!人家可能为了你“解密”吗?你一再的提技术,说白了,不就是要人家去参加你的培训嘛!你技术高你怎么不在51发个教学贴呢?只有这样,人家才 ...


3A也就他一个讲师,当然是首席的~~
作者: 05_DLL    时间: 2010-7-7 12:40
原帖由 abcdabcd 于 2010-7-7 12:00 发表
都是高手啊!我建议楼上来个真正的解密啊!也鄙视我一把!我花了3天时间都没搞不定。也算是够笨的!
拿个链接就说是所谓的解密,我怎么看也解不了!能够再多指点一些!害!也是真的是我笨!没看出该如何解!


我们鄙视的是你在51testing广告贴的行为,而不是鄙视你的技术和你的能力,这才是我们的目的,不要扯话题,这点逻辑我想作为聪明的你在三番五次的提醒下应该能理解了吧。
我再说一次,技术不是给你炫耀的,而是拿来用的。
作者: abc2010    时间: 2010-7-7 13:44
标题: 回复 33# 的帖子
终于被你看出来了

作者: abcdabcd    时间: 2010-7-7 13:50
我挺想炫耀我的技术的!我也挺希望我是kernzhang!因为我希望我能够拥有他的技术!
好像楼上05_DLL对3atesting特熟悉!比我熟悉!我那天和他们吃饭的时候,咋怎么感觉不是一个人啦!如果kernzhang给我看的他们自动化测试平台是他一个人开发出来的!我觉得他真的挺牛的!不过05_DLL也挺牛!否则人家有多少人都那么正气凛然一语道破呢!如果kernzhang现在还有这么多时间和05_DLL闲扯这些!我更佩服他了!能够在谈笑之间也能开发出一套自动化测试框架。
不过我是挺笨的!我看到35楼的帖子才明白你们是在抨击这是广告贴,而不是在抨击这项技术!我只所以不断的回帖!就是你们说这个很简单,倒浆糊!(17贴、19贴)我就想看看抨击的牛人技术有多强!挺想看你们炫耀出你们技术的!如果只是35楼所说的话题,我无权反驳!我反驳的是“很简单和到浆糊”
(谢谢你们看的起我!把“首席讲师”头衔给我了!哈哈!)




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