个人网站: www.7dtest.com 7点测试群:(61369656)------(77273408)------(35710365)------(9410090)

如何手工编写winsock脚本

上一篇 / 下一篇  2007-01-22 17:48:09 / 个人分类:Zee的生活

查看( 2878 ) / 评论( 14 )
原文见:http://blog.csdn.net/zeeslo/

对winsock脚本来说,手写脚本不是首选。为了理解如何建立脚本和Buffers,你需要知道服务器发送出来的协议

的细节。
为了自动产生脚本,需要录制一个客户端的应用。
如果你对服务器使用的协议非常的了解,那么也许你可以建立一个Data.ws文件和连贯的actions。但是这个过程

一定是单调而乏味的。你要有一些winsock脚本方面的经验。
为了看一个winsock脚本的例子,先试着录制一个简单的WEB应用(比如一个访问某站点首页的动作)。它会生成一

个简单的winsock脚本和buffer内容的格式。
为了建立LoadRunner的winsock脚本,录制一个客户端应用更可取。这样可以让LoadRunner从windows socket通

信中看到客户端和服务器的底层通信。LoadRunner使用wsock32.dll库录制socket通信,这个库包括windows

socket的API。
为了手写LoadRunner的winsock脚本,需要非常熟悉使用的协议。录制一个简单的浏览器的操作可以看到低于HTT

P协议通信的脚本。



下面是一个简单的例子:

[Action section]
   lrs_startup(257);
   lrs_create_socket("socket3", "TCP", "RemoteHost=slashdot.org:80", LrsLastArg);
   lrs_send("socket3", "buf4", LrsLastArg);
   lrs_receive("socket3", "buf5", LrsLastArg);

[data.ws section]
send buf4
      "GET / HTTP/1.1\r\n"
      "Host: slashdot.org\r\n"
      "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4) Geck"
      "o/20011128 Netscape6/6.2.1\r\n"
      "Accept: text/xml, application/xml, application/xhtml+xml, text/html;q=0.9,"
      " image/png, image/jpeg, image/gif;q=0.2, text/plain;q=0.8, text/css, */*;q"
      "=0.1\r\n"
      "Accept-Language: en-us\r\n"
      "Accept-Encoding: gzip, deflate, compress;q=0.9\r\n"
      "Accept-Charset: ISO-8859-1, utf-8;q=0.66, *;q=0.66\r\n"
      "Keep-Alive: 300\r\n"
      "Connection: keep-alive\r\n"
      "Cache-Control: max-age=0\r\n"
      "\r\n"

recv buf5 16716
      "HTTP/1.1 200 OK\r\n"
      "Date: Thu, 17 Jan 2002 15:27:13 GMT\r\n"
      "Server: Apache/1.3.20 (Unix) mod_perl/1.25 mod_gzip/1.3.19.1a\r\n"
      "SLASH_LOG_DATA: shtml\r\n"
      "X-Powered-By: Slash 2.003000\r\n"
      "X-Bender: The laws of science be a harsh mistress.\r\n"
      "Connection: close\r\n"
      "Transfer-Encoding: chunked\r\n"
      "Content-Type: text/html\r\n"



为了建立这样的脚本,你要知道客户端和服务端通信的时候发送的buffer的格式。这种格式最好适用于指定协议

的任何应用。

TAG: Zee的生活

winmeeasy发布于2006-10-25 10:45:41
不错,如果再给个支持SocketAPI的1W license就更好了:)
如果Zee还在工作 Zee 发布于2006-10-25 13:02:35
偶发的帖子总是很少人看。唉。
zhuzhenh的个人空间 zhuzhenh 发布于2006-10-25 14:01:54
我帮斑竹顶啦
deadhunter发布于2007-10-21 14:58:04
你的帖子比较经典
我学习到很多东西
syang0517发布于2007-10-22 09:15:04
经典
BrinkSoul 1qazse4 发布于2007-10-22 10:44:48
是啊,多谢Zee了,支持,学习!~!
candyren的个人空间 candyren 发布于2007-10-23 11:49:38
多谢了!支持!
牛牛的懒窝 RuisTar 发布于2007-10-23 11:55:56
支持Zee~
Leon's nest! yanming_huo 发布于2008-12-25 11:19:04
非常需要
coco1127发布于2009-03-31 16:27:27
这是经典的应用!!
专注于性能测试 witcher2002 发布于2009-07-03 10:33:35
疯狂学习winsock中。。。
270779028发布于2012-08-30 09:09:16
支持一下希望有更好的东西给大家分享
luohen1984发布于2012-09-19 07:48:04
努力学习中
luohen1984发布于2012-09-19 07:48:07
努力学习中
我来说两句

(可选)

我的栏目

日历

« 2024-04-23  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 158116
  • 日志数: 146
  • 图片数: 1
  • 建立时间: 2006-12-05
  • 更新时间: 2012-11-16

RSS订阅

Open Toolbar