51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3431|回复: 26
打印 上一主题 下一主题

怎么在列表中动态选择记录?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-6-4 12:24:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我要用lr录制在列表中选中某条记录,然后进行修改。现在的问题是lr记录的url路径是固定的,如果我把原来新增的记录删除了,即使我增加一模一样的记录,但由于他的itemid变了,我这个修改记录的脚本便运行不通过了,我应该怎么修改脚本,使该脚本在做压力测试时能通过?下面是lr录下来的脚本

web_url("ItemEditFrame.jsp",
                "URL=http://test2000:8080/taiko/prep/ItemEditFrame.jsp?itemid=9115",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t518.inf",
                "Mode=HTML",
                LAST);

web_submit_form("itemAction.do_2",
                "Snapshot=t519.inf",
                ITEMDATA,
                "Name=itemName", "Value=11", ENDITEM,
                "Name=addr", "Value=22", ENDITEM,
                "Name=prepDate", "Value=2005-06-03", ENDITEM,
                "Name=bb", "Value= 保 存 ", ENDITEM,
                LAST);
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏

该用户从未签到

2#
发表于 2005-6-4 14:31:26 | 只看该作者
不明白你的意思?你能再说明白一点吗?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2005-6-4 14:36:15 | 只看该作者
我现在好像知道是要建一个关联,不过还不知道怎么建
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2005-6-4 14:39:16 | 只看该作者
我的意思是录制后的脚本在回放时由于url地址改变有可能回放失败,因为这个地址URL=http://test2000:8080/taiko/prep/ItemEditFrame.jsp?itemid=9115准确地记录了这条记录,如果这条记录不存在了,回放就失败了,我现在就是想在新增时自动记录下itemid,这样我在修改时就把这个参数写到url中就可以了
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-6-4 14:39:38 | 只看该作者
不知道我这样说是否已经表达清楚了?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-6-4 15:34:44 | 只看该作者
呵呵!这是典型的web关联阿!你首先找到服务器itemid第一次的返回值,使用web_reg_save_param 把这个返回值记录到变量中,如果再在url中将这个变量放进去就行了!你可以看看“精华贴”关于关联的做法!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2005-6-6 11:28:15 | 只看该作者
版主,我怎么才能取到新增记录的itemid?因为我录制的新增脚本没有记录到itemid。程序是这样的,新增时弹出新增页面,保存后直接放到查询列表中,我要在查询列表中找出这条记录然后修改。录制的修改脚本有用到itemid,我现在该怎么取这个itemid呢?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2005-6-6 11:50:40 | 只看该作者
我新增的程序是这样的,这里没有显示itemid,我应该怎么取呢?
//新增一条记录
web_submit_data("itemAction.do_3",
                "Action=http://test2000:8080/taiko/itemAction.do?action=CHANGE",
                "Method=POST",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/itemAction.do?action=NEW",
                "Snapshot=t546.inf",
                "Mode=HTML",
                ITEMDATA,
                "Name=bb", "Value= 保 存 ", ENDITEM,
                "Name=itemName", "Value=aa", ENDITEM,
                "Name=addr", "Value=aa", ENDITEM,
                "Name=prepDate", "Value=2005-06-06", ENDITEM,
                LAST);

//新增后跳转到列表页面
        web_url("itemAction.do_4",
                "URL=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/main/menu1.jsp",
                "Snapshot=t547.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=images/line_2.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/con_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/menu_bg.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/con_r_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/line_down.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/fj1.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/dot1.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

[ Last edited by xiao_jie98 on 2005-6-6 at 12:37 ]
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2005-6-6 13:13:14 | 只看该作者
please switch to tree view and check server reponse value.
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2005-6-6 13:32:38 | 只看该作者
版主,你能不能说详细一点?我不太明白你的意思,我点了server reponse value,也没看出什么东西啊
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2005-6-6 13:38:03 | 只看该作者
//\转意符在我这里显示是人民币的标志
//href='/wm/mail/read.htmlsessionid=0fe692e3f08bc1f6ef924188e70a2c137&uid=10&msgid=10&mbox=ur.u3'>高效、安全、稳定--To: User3</a>

web_reg_save_param("MailList", "LB/ic=href=\'/wm/mail/read.html?sessionid=", "RB=\'>", "Ord=All", LAST);

// check how much mails in the list
        MailCnt=atoi(lr_eval_string("{MailList_count}"));
        if (MailCnt > 2)       
                for (cnt=1; cnt<4; cnt++) {
                        sprintf(mail_url, "URL=http://10.0.68.200/wm/mail/read.html?sessionid={MailList_%d}", cnt);
                        strcpy(mail_id_url, lr_eval_string(mail_url));
//                        lr_message(mail_id_url);

                        lr_start_transaction("HTTP_READ_MAIL");
                        web_url("Alibaba, B2B leader--To: User3",
                                mail_id_url,
                                "Resource=0",
                                "RecContentType=text/html",
                                "Referer=http://10.0.68.200/wm/mail/checkmail.html?sessionid={CheckMailListParameter}",
                                "Snapshot=t8.inf",
                                "Mode=HTTP",
                                LAST);
                        lr_end_transaction("HTTP_READ_MAIL", LR_AUTO);
                }

       
The web_reg_save_param function also supports array type parameters. When you specify ORD=All, all the occurrences of the match are saved in an array. Each element of the array is represented by the ParamName_index. In the following example, the parameter name is A:

web_reg_save_param("A", "LB/ic=<a href=", "RB=\'>", "Ord=All", LAST);


The first match is saved as A_1, the second match is saved as A_2, and so forth. You can retrieve the total number of matches by using the following term: ParamName_count. For example, to retrieve the total number of matches saved to the parameter array, use:

TotalNumberOfMatches=atoi(lr_eval_string("{A_count}"));
这是一个我以前用的动态形成下一次请求的角本,应当对你们这个有用
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2005-6-6 14:19:53 | 只看该作者
呵呵! cwj007都解释了怎么写了!你可以参考他那个方式写!
你如果想找到itemid的值,你可以切换到tree view选择server reponse,然后点开body。里面就是server端反馈的值!当然你首先要找到是在哪个url中反馈回来的!
回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2005-6-6 16:40:43 | 只看该作者
我想问一下,我看server reponse中我要取的值是这么写的<input name=list type=checkbox value="9126">,其中9126就是我要取的值,那我的web_reg_save_param应该怎么写呢?因为他的value还用双引号引起来了,我如果在边界中也写上双引号就会报错,我现在的函数是这样写的,可好像不行,因为我要取的只有9126这个数字,不包括引号
web_reg_save_param("gl_add",
        "LB=<input name=list type=checkbox value=",
        "RB=>",
        "Ord=1",
        "RelFrameId=1",
        "Search=body",
        LAST);
回复 支持 反对

使用道具 举报

该用户从未签到

14#
 楼主| 发表于 2005-6-6 16:47:23 | 只看该作者
我把脚本全部贴出来,大家帮忙看看问题出在哪里?
test_gl1()
{
        web_url("dot1.jpg",
                "URL=http://test2000:8080/taiko/images/dot1.jpg",
                "Resource=1",
                "RecContentType=image/jpeg",
                "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101",
                LAST);

        web_url("itemAction.do_2",
                "URL=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/main/menu1.jsp",
                "Snapshot=t559.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=images/line_2.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/con_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/menu_bg.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

        web_url("ItemNewFrame.jsp",
                "URL=http://test2000:8080/taiko/prep/ItemNewFrame.jsp",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t560.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=../images/con_r_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=../images/line_down.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

        lr_think_time( 14 );

        web_url("calendar.htm",
                "URL=http://test2000:8080/taiko/inc/calendar.htm",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t561.inf",
                "Mode=HTML",
                LAST);

        lr_think_time( 1 );

//新增一条记录
        web_submit_data("itemAction.do_3",
                "Action=http://test2000:8080/taiko/itemAction.do?action=CHANGE",
                "Method=POST",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/itemAction.do?action=NEW",
                "Snapshot=t562.inf",
                "Mode=HTML",
                ITEMDATA,
                "Name=bb", "Value= 保 存 ", ENDITEM,
                "Name=itemName", "Value=福建", ENDITEM,
                "Name=addr", "Value=福建", ENDITEM,
                "Name=prepDate", "Value=2005-06-06", ENDITEM,
                LAST);

//建关联,取下面页面中的值
   web_reg_save_param("gl_add",
        "LB=<input name=list type=checkbox value=",
        "RB=>",
        "Ord=1",
        "RelFrameId=1",
        "Search=body",
        LAST);

//新增后回到的列表页面
        web_url("itemAction.do_4",
                "URL=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/main/menu1.jsp",
                "Snapshot=t563.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=images/menu_bg.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/line_2.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/con_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

   
        web_url("ItemEditFrame.jsp",
                //"URL=http://test2000:8080/taiko/prep/ItemEditFrame.jsp?itemid=9129",
        "URL=http://test2000:8080/taiko/prep/ItemEditFrame.jsp?itemid={gl_add}",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t564.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=../images/line_down.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=../images/con_r_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=../images/fj1.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=../images/dot1.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

        lr_think_time( 8 );

        web_url("calendar.htm_2",
                "URL=http://test2000:8080/taiko/inc/calendar.htm",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t565.inf",
                "Mode=HTML",
                LAST);

//修改刚才新增的数据
        web_submit_data("itemAction.do_5",
                "Action=http://test2000:8080/taiko/itemAction.do",
                "Method=POST",
                "RecContentType=text/html",
                //"Referer=http://test2000:8080/taiko/itemAction.do?action=EDIT&itemID=9129",
        "Referer=http://test2000:8080/taiko/itemAction.do?action=EDIT&itemID={gl_add}",
                "Snapshot=t566.inf",
                "Mode=HTML",
                ITEMDATA,
                "Name=bb", "Value= 保 存 ", ENDITEM,
                //"Name=itemID", "Value=9129", ENDITEM,
        "Name=itemID", "Value={gl_add}", ENDITEM,
                "Name=itemName", "Value=安徽", ENDITEM,
                "Name=addr", "Value=安徽", ENDITEM,
                "Name=prepDate", "Value=2005-06-01", ENDITEM,
                LAST);

        web_url("itemAction.do_6",
                "URL=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=http://test2000:8080/taiko/main/menu1.jsp",
                "Snapshot=t567.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=images/menu_bg.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/line_2.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                "Url=images/con_m.jpg", "Referer=http://test2000:8080/taiko/itemAction.do?action=ORDERLIST&modelid=A0101", ENDITEM,
                LAST);

        return 0;
}
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2005-6-6 19:39:07 | 只看该作者
web_reg_save_param("gl_add",
        "LB=<input name=list type=checkbox value=\",
        "RB=\">",
        "Ord=ALL",
        "Search=body",
        LAST);

记住:这个函数一定要放在得到这个值之前的函数之前!比如:
web_submit_data(....)中反馈这个值,你就放在这个函数之前加web_reg_save_param()
还有:在写web_reg_save_param中出现"必须写成\",要以\进行转义!
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2005-6-7 09:31:04 | 只看该作者
呵呵,kernzhang写的也很详细了,呵呵,这个是跟据客户端反回的信息进行关联
回复 支持 反对

使用道具 举报

该用户从未签到

17#
 楼主| 发表于 2005-6-7 09:39:48 | 只看该作者
web_reg_save_param("gl_add",
        "LB=<input name=list type=checkbox value=\"",
        "RB=\">",
        "Ord=all",
        "Search=body",
        "NOTFOUND=warning",
        LAST);
我现在已经把这个函数移到新增的那个web_submit_data()之前了,可运行的时候还是报错,下面是报错信息,这是什么意思?他怎么取不到gl_add参数?
test_gl1.c(93): Error -26612: HTTP Status-Code=500 (Internal Server Error) for "http://test2000:8080/taiko/itemAction.do?action=EDIT&itemID={gl_add}"          [MsgId: MERR-26612]
回复 支持 反对

使用道具 举报

该用户从未签到

18#
 楼主| 发表于 2005-6-7 09:43:36 | 只看该作者
我如果写成ord=1,则报错信息变成test_gl1.c(93): Error -26612: HTTP Status-Code=500 (Internal Server Error) for "http://test2000:8080/taiko/itemAction.do?action=EDIT&itemID="          [MsgId: MERR-26612],这是怎么回事呢?
郁闷啊,这个问题困扰我好几天了,到现在还没解决:(
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2005-6-7 10:04:12 | 只看该作者
呵呵!实在不行,你通过MSN把脚本发给我!我帮你改得了!再说也说不清了!
回复 支持 反对

使用道具 举报

该用户从未签到

20#
 楼主| 发表于 2005-6-7 10:29:30 | 只看该作者
好啊好啊,版主的msn是多少?我的是:xiao_jie98@hotmail.com
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-7 05:41 , Processed in 0.087093 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表