首页 > 编程语言 > 详细

用Robot Framework+python来测试基于socket通讯的C/S系统(网络游戏)

时间:2014-04-03 23:16:04      阅读:1641      评论:0      收藏:0      [点我收藏+]

 

 

项目终于换了方案,改用socket来实现而不是之前的http了,所以测试工具就不能用以前的了,因为测试人手少,逼不得已的必须要挖掘更多的自动化方案来弥补。于是先研究了下python的socket解决方案,最后确定了struct的网络2进制数据读写方法,用python+threading处理后,形成了本地的自动化socket测试方案,该方案的逻辑流程如下图:

 

 

bubuko.com,布布扣

 

实际上,通过配置简单的协议和宏命令组合,就已经可以开始测试了,但为了要和每日集成结合起来,也为了以后的测试数据整合,用例整合更为方便,还是选择将该工具和robotFramework结合起来。

 

当然结合不是那么简单的拷贝过去,需要针对rf抽取socket工具中的核心模块,这里最关键的就是抽取协议模块、socket模块了,原本就写成了模块化,方便机器人线程调用,所以抽取的时候就很简单了。如下图

bubuko.com,布布扣

从自定义的协议核心模块protocols_struct中,继承tjnetwork过来,重写了关于socket服务器的连接方法,之后就是添加各个协议命令的关键字了,如截图中的test_3方法。

定义了足够的协议方法关键字后,就可以在RF中开始配置测试用例了。如下图,配置足够的环境变量(针对游戏项目必备的登录服务器的ip、端口,逻辑服务器ip、端口)

bubuko.com,布布扣

 

在测试用例中,将自己的关键字方法添加进去,就组装好了一份简单的登录测试用例,如下图(包含登录,服务器跳转,角色删除、角色建立等)

bubuko.com,布布扣

部分中文关键字的映射如下:

bubuko.com,布布扣

bubuko.com,布布扣

bubuko.com,布布扣

用Robot Framework+python来测试基于socket通讯的C/S系统(网络游戏),布布扣,bubuko.com

用Robot Framework+python来测试基于socket通讯的C/S系统(网络游戏)

原文:http://www.cnblogs.com/ckat/p/3643615.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!