技术开发 频道

闲话QTP——当孔明遇上QTP时

  其间还涉及一些问题:

  对象库

  孔明发现,QTP 在记录脚本时要用掉很多本子,仔细一看,这些本子叫“对

  象库”,他把有关对象的属性都记录到里面去了。比如某个按钮的属性为:

  类型:按钮,

  名称:发射,

  颜色:红色,

  密度:3000g/m3,

  材料:聚乙烯,

  重量:100g,

  位置:左边顶部

  ……

  为的是在测试时根据这些属性来确定对象,以便操作。可是要确定对象一般

  只需特定的两三个属性就够了(像刚才那个按钮只要用“类型:按钮,名称:发

  射”就足以标识它),其它属性变得多余且占空间。

  “QTP 啊,我不是给你指定了几个属性来标识对象吗?你把全部都记下来

  干嘛?洛阳纸贵啊”

  “丞相,我这样做是有好处的,如果根据指定的属性无法确定对象,我还有

  个特技,我可以用其它属性来进行智能识别。”

  “就你那智商还智能识别……”

  描述性编程

  为了节省资源,孔明令QTP 不要记录对象属性到对象库,改为直接在脚本

  中描述对象,比如对刚才那个按钮,只需描述类型和名称就可以找到它了。

  自动化测试(增强)

  有一次孔明出征去了,不在测试现场,QTP 在一炷香后还确定不了要按哪

  个按钮,就写了一张便条放在孔明办公桌上,其内容是:

  “无法找到“锁定目标”按钮所在的控制面板,应如何处理?你有几个选择:

  A、别测了,先吃饭去B、我不管,反正你不能停C、你来调戏试D、去掉两

  个不推荐的选项E、向现场将士求助。”

  然后暂停测试,干等孔明的指示,直到数月后孔明回来。鉴于此事,孔明令

  QTP 以后一旦遇到无法解决的问题或者完成测试后立刻向他报告,方式可以是

  用发短信、语音通话、发邮件、即时通讯工具、飞鸽传书等。

  需求变更

  后来孔明又对此机增加了一个功能:如果放入玉米、地瓜之类的食物,输出

  来的就是烤熟的了,这样将士们作战时就可以打到哪吃到哪。如果一并测试这个

  功能应该怎么改脚本?很容易想到:在“放入石头”的参数表中增加食物,在后

  面检查点中增加相应期望结果即可。改好脚本后QTP 照做,可这一次测试结果

  却是投石器把玉米抛了过去,给敌人送去了粮食,bug,终于出现了……

0
相关文章