- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LRSocket测试实例
看到51testing上很多人都分享测试经验,更显得自己的不劳而获显得那么不厚道。
所以写点东西,见笑了,大家指正。
希望对刚入手C/S架构的LR压力测试和负载测试有个引导作用(如果是B/S的产品,我更推荐OpenSTA)
产品很简单,就是无线终端去企业邮件服务器收取邮件,当然还可以发送邮件。(有些东西不方便透露,是流行的Push技术哦!)
由于要适应手机的特性(存储量不大,连接速度较慢)将POP3/SMTP协议进行了扩展,所以LR提供的POP3/SMTP协议就不太可用了。(主要是压缩和加密)
水平有限,采用录制脚本的方法:
单协议录制,选择Windows Sockets
2.选择应用程序。System32/cmd.exe
3.点OK就开始录了
4.根据协议,登陆,然后查新邮件,收邮件,然后退出(对附件的操作更复杂一点,但是原理差不多)
录出来了,是这个样子的:
端口部分被我喷掉了。^ ^
登陆部分?:
#include lrs.h
vuser_init()
{
lrs_startup(257);
lrs_create_socket(socket0, TCP, LocalHost=0, RemoteHost=6:xxxxx, LrsLastArg);//启动连接
lrs_receive(socket0, buf0, LrsLastArg);//收到返回值
lrs_send(socket0, buf1, LrsLastArg);//登陆名
lrs_receive(socket0, buf2, LrsLastArg);//返回值
lrs_send(socket0, buf3, LrsLastArg);//密码
lrs_receive(socket0, buf4, LrsLastArg);//返回值
我们看看登陆部分的BUFFER
看不清楚啊:
;WSRData 2 1
recv buf0 40
+OK xxxx server v1.0 ready\r\n
send buf1 14
user s1ckness\r\n
recv buf2 13
+OK LT-V1.0\r\n
send buf3 13
pass 123456\r\n
recv buf4 6
+OK \r\n
BUFFER都是对应的嘛,登陆成功了。
几乎所有的脚本都是send , receive,没有什么新鲜的。
(LR8.0不错,挺好使的)
如果大家对POP3协议熟悉的话呢,一定会知道每1封邮件对应1个UID
就是这个邮件的唯一标识。这就对我们收邮件的脚本造成了困扰。如果想收取某封特定邮件,那就好麻烦啊。
其实呢,大家都知道怎么解决的。( C/S下的关联:
先看ACTION里的
lrs_send(socket0, buf9, LrsLastArg);//察看邮件状态
lrs_receive(socket0, buf10, LrsLastArg);//收到邮箱中的邮件状态
lrs_send(socket0, buf11, LrsLastArg);//察看邮件的UID
lrs_receive(socket0, buf12, LrsLastArg);//收到UID
lrs_save_param(socket0, LRS_LAST_RECEIVED, mailid, 7, 18);//保存UID为参数,从上次收到的BUFFER中取值,从第7个字符开始,取18位。保存为mailid参数
lrs_send(socket0, buf13, LrsLastArg);//没有用,但是协议这么定的
lrs_receive(socket0, buf14, LrsLastArg);//收到了没用的东西,可能是察看大小的
lrs_send(socket0, buf15, LrsLastArg);//收该UID的邮件。注意,在BUFFER里用了mailid这个参数(前面保存了的)。大家要下去看BUFFER
lrs_receive(socket0, buf16, LrsLastArg);//收到邮件
lrs_send(socket0, buf17, LrsLastArg);//删除邮件
lrs_receive(socket0, buf18, LrsLastArg);//收到删除的返回。
BUFFER里的:
send buf9 6
STAT\r\n
recv buf10 12
+OK 1 2200\r\n
send bu
文档评论(0)