51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 6644|回复: 11
打印 上一主题 下一主题

[求助] 请教个问题:LR如何模拟REST client发post请求

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-11-13 16:21:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
服务器:nginx
测试需要模拟REST client向服务器发送Post请求,消息如下所示
POST /1.0.0.0/EnterAccounts/scy/SubAccounts/Create?sig=54ce457b7183895ce18f09cb383c698dHTTP/1.1
Content-Type: application/xml;charset=utf-8
Accept: application/xml
Authorization: MTAwMDoyMDEzMTExMzE1NDI1Nw==
Content-Length: 111
Host: 192.168.27.108:7777
Connection: Keep-Alive

<?xml version='1.0' encoding='utf-8'?>
<Create>
<appId>5ebdce4f87104b11b5ee9bf88ec53d4a</appId>
<accountSid>1000</accountSid>
</Create>

初学LR,摸索写了个脚本
web_add_header("Authorization", "MTAwMDoyMDEzMTExMzE1NDI1Nw==");
    web_custom_request("web_custom_request",

"URL=http://192.168.27.108:7777/1.0.0.0/EnterAccounts/scy/SubAccounts/Create?sig=54ce457b7183895ce18f09cb383c698d",

"Method=POST",

"Resource=0",

"RecContentType=application/xml",

"Referer=",

"Mode=HTTP",

"EncType=Content-Type: application/xml;charset=utf-8",

"Body=<?xml version='1.0' encoding='utf-8'?>/r/n"
"<Create>/r/n"
"<appId>5ebdce4f87104b11b5ee9bf88ec53d4a</appId>/r/n"
"<accountSid>1000</accountSid>/r/n"
"</Create>/r/n",
LAST);

请问各位大侠,如何实现?谢谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2013-11-13 16:26:59 | 只看该作者
本帖最后由 tianlang001 于 2013-11-13 16:29 编辑

"EncType=Content-Type: application/xml;charset=utf-8",

这行有错误
Content-Type其实就是EntType

改成下面的
"EncType=application/xml;charset=utf-8",
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2013-11-13 16:29:40 | 只看该作者
回复 2# tianlang001

是的,执行错误,如下:
正在开始操作 Action。
Action.c(3): 警告 -26593: 将添加的标头应用于所有后续 URL 时,可能会导致不可预测R 结果。已添加它          [MsgId: MWAR-26593]
Action.c(3): web_add_header("Authorization") 最高严重级别为“warning”          [MsgId: MMSG-26391]
Action.c(4): 错误 -27796: 连接服务器“192.168.27.108:7777”失败: “[10060] 连接已超时”          [MsgId: MERR-27796]
Action.c(4): 警告 -26000: Empty or no response for URL="http://192.168.27.108:7777/1.0.0.0/EnterAccounts/scy/SubAccounts/Create?sig=54ce457b7183895ce18f09cb383c698d"          [MsgId: MWAR-26000]
Action.c(4): web_custom_request("web_custom_request") 最高严重级别为“ERROR”,0 个正文字节,0 个标头字节          [MsgId: MMSG-26388]
正在结束操作 Action。
正在结束迭代 1。

备注:服务器是OK的,因为我用python构造同样的消息能获得响应,所以怀疑自己写的脚本有错误,请各位大侠指教,谢谢!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2013-11-13 16:32:13 | 只看该作者
好吧,雷到我了,你的转义字符真奇葩
是\r\n     而不是/r/n
其实发送的数据要不要这个都无所谓,这样只是在log中容易看些
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2013-11-13 16:36:35 | 只看该作者
Body=<?xml version='1.0' encoding='utf-8'?>
你确定这里面是单引号而不是双引号么,怎么我的REST Client里都是双引号呢,要是双引号的话,记得要转义
写成这样\"1.0\"
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2013-11-13 16:37:49 | 只看该作者
本帖最后由 tianya6607 于 2013-11-13 16:40 编辑

回复 4# tianlang001


    把转义符修改或拿掉后还是不行,依旧报上述错误,单引号是确信的,用python构造http请求也是单引号
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2013-11-13 16:45:14 | 只看该作者
本帖最后由 tianlang001 于 2013-11-13 16:46 编辑

回复 6# tianya6607


    第一个回复你改了没,第一个回复我重新编辑过,最开始没看到错误
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2013-11-13 16:49:48 | 只看该作者
回复 7# tianlang001


    感谢大侠耐心指导,我仔细检查了代码,自己犯错误了,把URL地址搞错了,URL修正后就OK了,谢谢!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2013-11-13 16:58:35 | 只看该作者
回复 8# tianya6607


    算不得大侠,只是最近刚好把这个研究懂了,呵呵,共同进步,EntType那个你改了没,要是没改能运行给我说下哈。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2013-11-13 17:08:37 | 只看该作者
回复 9# tianlang001


    不改也是可以的,只是头域Content-Type: Content-Type: application/xml;charset=utf-8
重复的,可能服务器没有严格校验
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2013-11-13 17:23:30 | 只看该作者
回复 10# tianya6607


    thanks,我还知道这个可以写到header中去,写两个header
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2015-8-28 10:59:44 | 只看该作者
tianya6607 发表于 2013-11-13 16:29
回复 2# tianlang001

是的,执行错误,如下:

你这个警告是怎么解决的,我本来想直接忽略的,但是会影响后面的操作。
Action.c(3): 警告 -26593: 将添加的标头应用于所有后续 URL 时,可能会导致不可预测R 结果。已添加它          [MsgId: MWAR-26593]
Action.c(3): web_add_header("Authorization") 最高严重级别为“warning”          [MsgId: MMSG-26391]

回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-8 15:21 , Processed in 0.076776 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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