1.设计目的
此用例用于压力测试指定的数据包，在服务器上的执行情况。允许设置多线程执行。支持TCP和UDP。
可以测试PSS框架服务器，也可以测试非PSS的其他服务器。

这里需要注意的是，由于考虑支持任意数据块的发送，在这里，我使用了明文的二进制码的方式。
在你使用的时候，你需要把你的信息变为明文的二进制，放入其中，也可是使用明文发送。
如果是测试框架性能，必须保证此二进制数据块可以正确的被正确的被框架解析并返回数据。
可以在选项中打开日志选项，记录你的发送和接收数据包的日志。
为了兼容变化的数据发送，此工具内置了Lua虚拟机，支持Lua脚本。
你可以使用Lua脚本，对你的发送数据进行定制性发送，同时，也可以对你的收到的数据进行验证。

2.参数说明
服务器IP：    要测试的服务器IP
服务器端口：  要测试的服务器端口
压测线程数：  要同时运行的连接线程数
接收超时秒数：接收数据包时，要超时的秒数(单位是毫秒)
连接延迟毫秒：允许连接建立等待完成的最长时间(单位是毫秒)
数据包间隔:   每次发送接收完数据包后的时间间隔，如果为0则代表没有间隔(单位是毫秒)
UDP接口端口:  你可以在发送UDP包的时候，设置一个端口，接收设置一个端口，如果是相同的，设置一样的即可。

是否开启长连接：开启长连接意味着整个压测过程，连接都不会断开。如果这个不选，则每次发送接收包后，会自动断开当前连接，下一次发包的时候重新建立
是否开启随机延迟：当选中该选项的时候，程序会自动随机0-1000毫秒的时间。在下一次连接建立的时候。这个选项必须不能勾选开启长连接，否则无效。
是否接收应答包：当选中此选项，程序会在发送数据后等待接收数据包。
是否启用随机数据包：当选中此项时，每当数据包要被发送时，程序会自动把当前数据包复制成1-10个，一次send出去，。
是否记录数据日志：当选中此项时，程序会自动记录所有发送和接收的二进制数据包，二进制以ASCII码的方式明文的存储在当前文件夹下的ThreadX.log中
                  如果是你启动了10个线程，那么文件名会是Thread0.log到Thread9.log
				  记录格式为
				  [SendBuff] 0x0A 0x00 0x00 0x00 0x00 0x10 0xBE 0xCD 0xAA 0x8F 0x3C 0x01 0x00 0x00
				  [RecvBuff] 0x0A 0x00 0x00 0x00 0x00 0x10 0xBE 0xCD 0xAA 0x8F 0x3C 0x01 0x00 0x00
				  SendBuff表示每次发出的数据包
				  RecvBuff表示每次接收到的数据包
				  
只发送一个包：当勾选此项时，代表程序只执行一次发包操作。如果此时同时勾选了接收应答包，则是一次完整的发送接收过程。

当在发送过程中出现了发送异常，或者接收异常
StressTest_Error.log日志会记录发生异常的错误ID，以及时间，用于分析。

你可以在下面的压测二进制串处，写入你要发送的二进制ASCII串
格式为
0a 00 00 00 00 10 be cd aa 8f 3c 01 00 00
如果你是明文发送，你可以选择上面的下拉选项，选择"文本模式"
在此模式下，程序会直接发送你的文本信息。
为了区别这两个模式。
我特意用蓝色标记为二进制模式字符串，红色标记为文本模式字符串

设置好上面的选项，你就可以压测你的数据了。点击压测按钮，当你要停止的时候，点击停止压测。
下面的压力测试参数会根据你的压测具体情况不断的刷新显示。
当然，freeeyes可以让你导出压测文档，你可以导出你的压力测试结果。
结果生成在当前文件夹下的StressTest.log
格式为：
=============================================
压测类型:TCP
压测IP:127.0.0.1, 压测端口:10002.
压测开始时间为: 2014-02-12 14:05:44
压测结束时间为: 2014-02-12 14:18:22
压测线程数:1
创建成功连接数:1
成功发送数据包数:1
成功接收数据包数:1
发送字节数:14
接收字节数:14
连接失败数:0
发送失败数据包数:0
接收失败数据包数:0
连接成功百分比:100.000000%
发送数据包成功百分比:100.000000%
接收数据包成功百分比:100.000000%
=============================================

自己可以看中文哈

3.如何使用高级模式
如果你还觉得不过瘾，毕竟，有时候，我们需要不断的组织数据。
压测一成不变的数据包没太大意思。
那么你可以使用高级模式。
高级模式是使用Lua实现的。
在当前目录下，有一个PassTcp.lua的脚本文件。
你打开这个脚本，这个脚本是一个完整的组包和接收数据包验证的例子，里面有注释。

如果要使用高级模式，请勾选 "启用高级模式"
然后选择你的Lua文件，默认可以选择PassTcp.lua，当然，如果你不喜欢这个名字，你自己起一个名字就行了，按照这个脚本规范写一个新的，完全没问题。
然后点击开始压测，程序在组包和收包的两个过程中，会分别调用你的Lua脚本中的两个方法，你可以在这里编程。
