|
本人前段时间遇到过不少录制事件为0,根本不生成脚本的问题,后来使用自定义代理也无法解决,最后就象我日志说到的那样,用了一个网络助手,把底下日志里的包一个一个的手工发送,使用LR录制这个网络助手的动作来生成脚本,不过业务量大的时候实在是让人头痛,发送的包太多导致工作量变的非常庞大,于是就有了编写这个工具的动机.
这个工具是使用JBuilder编写,只适合用来替代TCP长连接的客户端.
LR录制事件为0时如果要求修改客户端这比较不现实,但让开发人员把发送和接收的数据全部打印到日志中却是比较简单的.
步骤:
1.获取到日志
2.用LR录制打开NetX,设置好发送数据的标志(日志中那段字符可以标明本段属于发送的内容),设置好发送数据的开始标志(日志中发送数据那段的内容中需要发送的起始位置),设置好接收数据的结束字符串.
例子:
【2008-03-13 14:21:43】Send Data:<YSDATA_MSG Lenght='' mtds_length='0' dtds_length='0' mlds_length='0' dlds_length='0' ōperato='' ClassID='' ClientID='' ServerID='' UserName=''><YSDATA_Value/><YSDATA_Item/><mtds></mtds><dtds></dtds><mlds></mlds><dlds></dlds></YSDATA_MSG>
【2008-03-13 14:21:43】Recv Data:<YSDATA_MSG Lenght='' mtds_length='0' dtds_length='0' mlds_length='0' dlds_length='0' ōperato='' ClassID='' ClientID='' ServerID='' UserName=''><YSDATA_Value/><YSDATA_Item ResultType=""/><mtds></mtds><dtds></dtds><mlds></mlds><dlds></dlds></YSDATA_MSG>
那么"】Send Data:"就是标志了本段内容是发送数据也就是Send Mark,还有在这段数据中,发送的实际内容从"】Send Data:"开始,因此Start mark也是"】Send Data:",结束符号"</YSDATA_MSG>"
设置好之后点load file开始装载你想要分析的文档,点选打开,工具就会帮你把需要发送的包都对应到右边的list上,你点选任何一项都会把对应的发送内容显示在工具的右下方,接着你可以连接服务器了,点Send就会把右下方的内容发送到服务器中,并把接收显示在上方的TextArea上.
当然,你可以不设置Send Mark和start mark,也不装载文件,你可以直接把需要发送的内容COPY到右下方的TextArea中直接发送.
3.直接对NetX进行操作,你会发现它简化了你的工作.
工具写的很简单,论坛里的高人们就别耻笑了,只是用来辅助的工具.用户体验比较差,用起来是有点麻烦,实在有需要的就将就点用用吧. |
|