分享
 
 
 

SilkPerformer的十一宗罪(下)

王朝other·作者佚名  2006-12-28
窄屏简体版  字體: |||超大  

SilkPerformer的库函数难以使用。BDL的库函数彷佛由虐待狂精心设计,专门用于折磨人的神经,污染人的双眼。SilkPerformer的函数库的特色是WYGINWYG--所得非所猜。如果哪位老大心理强健,觉得WebFormValueSet()设计得还行,不妨再欣赏一下另外一个函数。比如说,搜索字串。简单?呵呵,Segue的天才程序员们可不这样想。这个函数的signature就足以让每个正常人得心绞痛。

StrSearchDelimited(

out sTarget: string,

in nMaxTarget: number,

in sSource: string,

in sLeftVal: string allownull,

in nLVOccurrence : number,

in sRightVal : string allownull,

in nRVOccurrence : number,

in nFlags: number ): boolean;

Segue难道不知道这个世界上有种东西叫regular expression么?这个问题带出SilkPerformer的又一宗罪:

SilkPerformer的regular expression支持就是一个笑话。首先,BDL支持的regular expression少得可怜,就只有., *, +, $, ^, [a-zA-Z0-9], [^], 和\。公平地讲,这些有限的功能也可解决很多问题。可惜Segue不知道怎么写出一个合格的regular expression引擎。 哪怕在一个10多K的网页里搜索"*\([aA]action|requeset\).*successful"都能花上30分钟。顺便说一句,\(代表grouping,和通行的规则刚好相反。在SilkPerformer里集成一个开源的regular expression引擎又不难。也许Segue觉得开源的质量不如他们自己的代码。

SilkPerformer不支持对HTML DOM 对象的操作。嘿嘿,我没有说错,你也没有听错。虽然SilkPerformer号称Web应用的测试工具,但我们没有任何方法读写DOM。俺能想到的唯一原因是Segue鄙视测试员,觉得做测试的不能处理DOM。要拿到HTML页面某一部分,我们必需使用下面这个让人得脑癌的函数:

WebParseHtmlBoundEx(

out sResult: string,

in nMaxResultLen: number optional,

in sLeftBoundary : string optional,

in nLeftOccurrence : number optional,

in sRightBoundary : string optional,

in nOptions: number optional,

in sFrame: string optional,

out nBytesParsed : number optional);

或者这个:

WebParseTable(

out sResult: string,

in nMaxResultLen : number,

in nTablenNum: number,

in nRow: number,

in nColumn: number,

in nOptions: number optional,

in sFrame: string optional,

out nBytesParsed : numberoptional);

每次看到这些愚蠢的函数,我都禁不住怒从心头起,恶向胆边生。用这种函数编程的测试员们怎么可能不士气低落?怎么可能不怨声载道?怎么可能不自伤身世?怎么可能不问候Segue程序员的上下九族?我们怎么知道要选取哪个frame? 我们怎么知道选取哪个table number? 我们怎么知道什么边界值保证返回我们希望得到的值?怪不得我们不得不依赖SilkPerformer的记录器。怪不得我们的效率如此底下。从这些函数的sigature来看,SilkPerformer内部多半也没有使用DOM解析。稍微复杂点的就要求我们用那些没人理解的边界设置函数。当然,SilkPerformer6.5号称提供DOM解析。当我第一次读SilkPerformer6.5的手册时,眼珠子差点弹出眼眶:要解析一段HTML代码,我他妈得在得到HTML代码前在一个他妈的XML文件里设定解析规则!也就是说,我们不能用诸如getHTML().getDOM().getElementById()这种通行的方法。我们必需告诉SilkPerformer, yo man,I want a fucking table。然后再调用getHTML().getTable()。如果这不叫变态,还有什么叫变态?嗯,俺其实漏说了一点。SilkPerformer提供所谓基于页面的函数(page-based functions)。这些函数让我们能读取诸如link, title,button一类的HTML元素。问题是,我们也就能读取link, title, 和button。Form呢?Table呢?Div呢?Span呢?Options呢?SilkPerformer是不会放弃变态的机会的:我们只需要在递交一个URL申请之前用下面这个白痴函数设定要读取得元素。为什么Segue的程序员会觉得正常人可以使用这些函数,已经成了不解之谜。

WebParseDataBound(

out sResult : string,

in nMaxResultLen : number optional,

in sLeftBoundary : string optional,

in sRightBoundary : string optional,

in nOptions : number optional,

in nDocNum : number optional,

out nBytesParsed : number optional );

SilkPerformer的开发和debugging极其困难。一个复杂的web应用里,HTTP Transaction携带的信息远远超过一个用户关心的东西。Form里大量的隐藏<input>,JavaScript合成的XML,HTTP Header里携带的额外信息,通通暴露在测试员面前。哪怕让记录器录下的一个测试用例勉强可以被重用,我们都要阅读上千行代码,引入几十个变量。新的发布往往让上百个测试用例当调。SilkPerformer还没有debugger。调试一个用例动则花上几小时,因为页面上的错误往往不能简单对应记录下的代码。很多人修改代码时,干脆重新记录。这不是浪费是什么?不是折磨是什么?

SilkPerformer没有一个活跃的社区支持。要得到点技术帮组很难。到Google上搜BDL, 搜SilkPerformer,都得不到多少有用的信息。搜索返回的页面大都和培训或营销有关。Segue自己有个技术支持站点,可惜不对外公开。不知道别人怎么样,反正我用BDL的时候觉得自己是头21世纪的恐龙,孤独,茫然,感觉被时代淘汰。

总的来说, SilkPerformer对测试自动化的支持极为原始。要想搭建出健壮而实用的测试模块,还是不用SilkPerformer为好。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有