
man16181
-
个人空间
- 组别:新手上路
- 性别:
- 来自:
- 积分:5
- 帖子:5
- 注册:
2008-08-28
|
从QTP参数化到WR参数化
前几天看了xiaonan和gp_jl对QTP参数化的讲解和实际应用的帖子,感觉方法不错,从另一个角度对回放过程中的对象参数化。这些天一直在做WR的学习,觉得WR与QTP对对象的识别很类似,那么WR中应该也可以通过修改GUI文件(QTP中就是对象库)中逻辑名的物理识别属性达到参数化的效果,于是同样录制了flight例子,脚本及关键语句如下: # Login set_window ("Login", 4); edit_set ("Agent Name:", "mercury"); obj_type ("Agent Name:","<kTab>"); password_edit_set("Password:", "kzptnyoslzjsaz"); obj_type ("Password:","<kReturn>"); # Flight Reservation set_window ("Flight Reservation", 6); edit_set ("Date of Flight:", "11/11/11"); list_select_item ("Fly From:", "Denver"); # Item Number 0; list_select_item ("Fly To:", "Los Angeles"); # Item Number 2; obj_mouse_click ("FLIGHT", 25, 29, LEFT); # Flights Table set_window ("Flights Table", 1); list_select_item ("Flight", "2612 DEN 08:57 AM LAX 09:55 AM NW $130.80"); # Item Number 2; button_press ("OK"); # Flight Reservation set_window ("Flight Reservation", 5); edit_set ("Name:", "dionysus"); # rc = GUI_buf_get_desc_attr(".\\gui.gui","Flight Reservation","First","label",x); # GUI_buf_get_desc_attr()函数可以得到某一个对象的属性值 # pause(x); for(i=1;i<=3;i++) { switch(i) { case 1: { val = "First"; break; #一定要有这个break语句 } case 2: { val = "Business"; break; } case 3: { val = "Economy"; break; } } rc = GUI_buf_set_desc_attr(".\\gui.gui","Flight Reservation","First","label",val); button_set ("First", ON); wait(2); } button_press ("Insert Order");
| 最后回放的时候可以看到button_set函数点击逻辑名称为"Frist"的对象,但这个对象的物理描述是变化的,中国IT实验室所以每次点击都不一样。
|