51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 5654|回复: 10
打印 上一主题 下一主题

[原创] LR 如何发送xml 格式的数据到 severlet。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-4-17 11:28:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前都是用Jmeter的xml-rpc  request 方式做性能测试,最近想用LR来做做,查到网上说使用web_custom_request来发送请求,照着写了一下代码如下:

  1. char c_myxml[2000];
  2. char myxml[]="";
  3. strcat(myxml," <soap11:Envelope xmlns=\"http://www.derbysoft.com/dswitch/ari\" xmlns:soap11=\"http://schemas.xmlsoap.org/soap/envelope/\">");
  4. strcat(myxml,"<soap11:Body>");
  5. strcat(myxml,"<GetChangeRequest Token=\" \">");
  6. strcat(myxml,"<Contract ChannelCode=\"Bookingcom\" SupplierCode=\"IHG\"/>");
  7. strcat(myxml,"<RetrieveChangeCriterion>");
  8. strcat(myxml,"<RetrieveChangeCriteria HotelCode=\"DSIHG109802\" Since=\"2012-04-11T00:00:00\" Type=\"Change\">");
  9. strcat(myxml,"<DateSpan Start=\"2012-03-01\" End=\"2012-06-01\"/>");
  10. strcat(myxml,"</RetrieveChangeCriteria>");
  11. strcat(myxml,"</RetrieveChangeCriterion>");
  12. strcat(myxml,"</GetChangeRequest>");
  13. strcat(myxml,"</soap11:Body>");
  14. strcat(myxml,"</soap11:Envelope>");
  15. web_custom_request("ihgplugin",
  16. "Method=POST",
  17. "RecContentType=text/xml",
  18. "EncType=text/xml; charset=utf-8",
  19. "url=http://IP/test/retrieve",
  20. myxml,
  21. LAST);
复制代码


在运行时总是提示如下错误:
Action.c(16): Error -27226: The
"<soap11:Envelope xmlns="http://www.derbysoft.com/dswitch/ari" xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"><soap11:Body><GetChangeRequest Token="ec24db7b-474d-4467-afc8-88e8273be4dc"><Contract ChannelCode="Bookingcom" SupplierCode="IHG"/><RetrieveChangeCriterion><RetrieveChangeCriteria HotelCode="DSIHG109802" Since="2012-04-11T00:00:00" Type="Change"><DateSpan Start="2012-03-01" End="2012-06-01"/></RetrieveChangeCriteria></RetrieveChangeCriterion></GetChangeRequest></soap11:Body></soap11:Envelope>"
argument (number 6) is unrecognized or misplaced   [MsgId: MERR-27226]

如果吧myxml 换成如下填写
      "Body=<soap11:Envelope xmlns=\"http://www.derbysoft.com/dswitch/ari\" xmlns:soap11=\"http://schemas.xmlsoap.org/soap/envelope/\">"
  "<soap11:Body>"
  "<GetChangeRequest Token=\"ec24db7b-474d-4467-afc8-88e8273be4dc\">"
  "<Contract ChannelCode=\"Bookingcom\" SupplierCode=\"IHG\"/>"
  "<RetrieveChangeCriterion>"
  "<RetrieveChangeCriteria HotelCode=\"DSIHG109802\" Since=\"2012-04-11T00:00:00\" Type=\"Change\">"
  "<DateSpan Start=\"2012-03-01\" End=\"2012-06-01\"/>"
  "</RetrieveChangeCriteria>"
  "</RetrieveChangeCriterion>"
  "</GetChangeRequest>"
  "</soap11:Body>"
  "</soap11:Envelope>"

是能正常工作的,但是我希望把请求的数据放在外面,这样可以重复利用,便于管理。

请问我最上面的写法哪里不对导致的[MsgId: MERR-27226] 错误,该怎么修改,谢谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-4-17 12:28:53 | 只看该作者
首先你应该把xml字符串放在参数里面,然后你可以参考lr_xml_系列函数来更新
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2012-4-17 17:22:02 | 只看该作者
云层,这个不可行。有可用的例子一贴便可,除非是你写的书的镇书之宝,要花钱。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-4-17 17:33:20 | 只看该作者
认真看了一下你开始myxml 就拼错了,先要有body=开始的,而且注意引号
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2012-4-17 17:46:56 | 只看该作者
对了。我还想过这个Body是不是少了,但看了看网上别人的例子,好像没有写body,不过是人家写了,我没看到。浪费我1天时间鼓捣这玩意儿。鄙视自己。
谢谢,云层。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2012-4-17 17:48:18 | 只看该作者
对了。我还想过这个Body是不是少了,但看了看网上别人的例子,好像没有写body,不过是人家写了,我没看到。浪费我1天时间鼓捣这玩意儿。鄙视自己。
谢谢,云层。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2012-4-18 09:43:11 | 只看该作者
咋给分呢?没找到按钮呀
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2012-4-18 12:36:44 | 只看该作者
不用给分了,这东西没啥用
回复 支持 反对

使用道具 举报

  • TA的每日心情
    擦汗
    10 小时前
  • 签到天数: 942 天

    连续签到: 1 天

    [LV.10]测试总司令

    9#
    发表于 2012-4-19 09:28:01 | 只看该作者
    回复 8# 云层


        分多的人就这样说了!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2012-4-19 11:06:05 | 只看该作者
    回复 9# lsekfe


        你也很多铭牌呀
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2012-4-20 10:57:26 | 只看该作者
    有没有个 可以测试的实例啊,我也想学习下
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-6 20:02 , Processed in 0.080368 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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