学习python也有一段时间,当初学的时候就是因为找不到什么有效方法来实现一个通用的协议测试工具.
实际场景如下:针对服务器与客户端通讯的私有协议(一般为二进制流),通常彼此的调试需要花费好些时间,且两方面都需要有专人参与,费时费力,当时就设想,能否做一个通用工具,通过xml配置协议结构,初始值,进行自动测试呢.原先有同事进行过这方面的探索,用C++实现了一个协议测试工具,感觉工作量比较大,且通用性比较差,将其用到另一个私有协议,需要改动太多的代码.
当时就在考虑用C++编写是否合适,后来在网上搜索,发现python开发效率很高,且没有类型申明的麻烦,最重要的是可以边解释,边执行,当时就在想,是否用它能完成心中的构想.
学了几个月python后,尝试用其写各种工具,发现开发效率相当高,应是到了实现构想的时候了.
罗列一下实际工具的样子:
1、有界面(这样才足够友好)
2、可以读取配置文件(此配置文件描述协议的结构,及解析的约束条件,考虑用xml实现)
3、打印出通讯的数据(发送的结构,收回的结构)
实施的步骤:
1、实现一个界面,内有load按钮,相关消息可以打印出来。
2、实现一个读取xml文件的程序,并整理出xml格式
3、实现一个通信模块,完成发送和接收数据功能。
4、整合成一个简单的通用协议测试工具
5、根据实际需要进行修正,使得更具实用性。