功能介绍

  在有的网络开发需要走二进制流协议场景,比如网络游戏开发,在开发阶段,前端和后端协商好协议后就分别开发。在开发写代码的时候,有时需要对端发送一条完整的协议过来触发一下自己的代码,进行单步调试或单元测试,但对端现在也在开发,不能发完整的协议过来。这种情况下,我们可以使用TcpEngine工具模拟对端向我们发送完整的协议,实现触发我们的代码逻辑。

  TcpEngine是可以通过xml配置,模拟二进制流协议的工具,比如有一条协议的定义如下面四个部分

1. 1~4共四个字节是整型,存放消息体长度。

2.  5~6共两个字节是短整型,存放命令ID。

4. 最后是消息体,长度由首四个字节指定。

  那么TcpEngine对象的xml配置如下面所示。

<!-- 用<data>变量体接收协议配置过程示例,排序位置表示在协议中的位置 -->

<data id="msg_len" value="{int:net}"></data> <!-- 1~4共四个字节整型,从网络接收数据 -->

<data value="{short:net}"></data>       <!-- 5~6共两个字节短整型,从网络接收数据 -->

<data value="{short:local:const}123"></data><!-- 7~8共两个字节短整型,填本地固定值123 -->

  <data value="{string:net:calc}$msg_len"></data> <!-- 后面是消息体,从网络接收,接收长度由变量id=msg_len变量体指定 -->

  这个工具的主要功能有

1. 通过xml配置二进制协议。

2. 支持模拟前端和后端(模拟后端时,只允许一个前端连接)

3. 支持byte(一个字节);short(两个字节短整型);int(四个字节整型);long(八个字节长整型);float(四个字节浮点型);double(八个字节浮点型);json字符串。

4. 支持Tcp和WebSocket两种网络协议。

5. 保存关键数据,在下一条协议中继续使用。

6. 日志显示测试过程数据变化,可保存日志到文件,下次打开日志文件可恢复测试现场。

7. 支持常用的运算符。

8. 支持延迟或暂停测试过程。

工具主界面

运行界面

工具地址: https://pan.baidu.com/s/1P0yPWWiEj8lUvN-a7GwIWw

游戏协议模拟测试工具(TcpEngine)使用简介的更多相关文章

  1. Apache自带压力测试工具ab用法简介

    ab命令原理 ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问.它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx.lighthttp ...

  2. [开源]微信在线信息模拟测试工具(基于Senparc.Weixin.MP开发)

    目前为止似乎还没有看到过Web版的普通消息测试工具(除了官方针对高级接口的),现有的一些桌面版的几个测试工具也都是使用XML直接请求,非常不友好,我们来尝试做一个“面向对象”操作的测试工具. 测试工具 ...

  3. 协议并发测试工具 BoHexTest

    BoHexTest V1.0.3 1.添加连接LOG打印2.优化代理及并发策略 大小: 1074688 字节修改时间: 2017年10月3日, 10:24:26MD5: EBAE5A17F7F5ED0 ...

  4. Slickflow.NET 开源工作流引擎高级开发(六) -- WebTest 引擎接口模拟测试工具集

    前言:引擎组件的接口测试不光是程序测试人员使用,而且也是产品负责人员需要用到的功能,因为在每一步流转过程中,就会完整模拟实际用户发生的场景,也就容易排查具体是程序问题还是业务问题,从而快速定位问题,及 ...

  5. 在线GET/POST API接口请求模拟测试工具

    在前后端开发过程中经常需要对HTTP接口进行测试,推荐几款比较好用的测试工具 Postman https://www.getpostman.com/ 强大的HTTP请求测试工具 支持多平台 Advan ...

  6. monkey测试===Android测试工具Monkey用法简介(转载)

    Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...

  7. Linux下的内核测试工具——perf使用简介

    Perf是Linux kernel自带的系统性能优化工具.Perf的优势在于与Linux Kernel的紧密结合,它可以最先应用到加入Kernel的new feature.pef可以用于查看热点函数, ...

  8. linux--->ab测试工具使用

    ab测试工具使用 ab简介 是apache自带的压力测试工具.其原理是ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问.它的测试目标是基于URL的,因此,它既可以用来测试ap ...

  9. httpd的压力测试工具-ab工具使用案例

    httpd的压力测试工具-ab工具使用案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   一.httpd自带的工具程序 事实上,在我们安装完Apache之后,它默认就会给我们安 ...

随机推荐

  1. vue app.xxx.js 较大问题

    线上build之后发现app.XXX.js 文件特别大. 包我都改为cdn了 其他空间就是路由改为懒加载了. { path: '/a/b', name: 'ab', component: () =&g ...

  2. [Dart] Understand Classes and Inheritance in Dart

    We will look at how we can create classes and explore some various features. Dart adopts a single-in ...

  3. HTML 009 CSS

    HTML 样式- CSS CSS (Cascading Style Sheets) 用于渲染HTML元素标签的样式.     Look! Styles and colors Manipulate Te ...

  4. js-清空array数组

    两种实现方式: 1.splice:删除元素并添加新元素,直接对数组进行修改,返回含有被删除元素的数组. arrayObject.splice(index,howmany,element1,....., ...

  5. .NET项目 - sqlserver 连接字符串

    服务器本地连接: <connectionStrings> <add name="db" connectionString="Data Source=lo ...

  6. NodeJS基础知识

    console.log方法: console.log("This is a test string"); node app.js 使用重定向标准输出流: node app.js 1 ...

  7. PHP全栈学习笔记24

    PHP in_array() 函数 定义和用法 in_array() 函数搜索数组中是否存在指定的值. type 参数被设置为 TRUE,则搜索区分大小写. 语法 in_array(search,ar ...

  8. CNN模型合集 | 1 LeNet

    1.1 LeNet的设计思想 1998年LeCun提出,经典结构,3层,五脏俱全(卷积层.Pooling层.FC网络.Sigmod层),对标传统神经网络.主要设计贡献 局部感受野(local rece ...

  9. 简单python脚本,将jupter notebook的ipynb文件转为pdf(包含中文)

    直接执行的python代码ipynb2pdf.py 主要思路.将ipynb文件转成tex文件,然后使用latex编译成pdf.由于latex默认转换不显示中文,需要向tex文件中添加相关中文包. 依赖 ...

  10. Spring-Cloud-Eureka实例

    SpringCloud实现服务注册中心 注册中心这么关键的服务,如果是单点话,遇到故障就是毁灭性的.在一个分布式系统中,服务注册中心是最重要的基础部分,理应随时处于可以提供服务的状态.为了维持其可用性 ...