现在在做的一个游戏项目开发时需要使用unity客户端进行调试,但身为一个服务端程序员,尝尝需要先行开发以便客户端调试,之前的做法是开发完成后,写好对应的GM指令,不够便捷。所以萌生一个想法,写一个测试客户端,这样不需要更新unity客户端,等待漫长的编译过程,在工作的后期又看到了pytest这个库,尝试结合起来做一个自动化协议测试的东西。
http://blog.csdn.net/q_yang1987/article/details/52194860之前写的这篇文章描述的就是这个项目的私有协议的python序列化反序列化模块实现,期间对FixSizedString类型字段做了一些优化,主要方便直接赋值字符串而不用使用类似set_str这样的函数。
先介绍一下pytest这个东西,官网地址http://docs.pytest.org/en/latest/contents.html,pytest功能丰富:
1. hack了assert,如果断言失败可以进行debug(pdb),如果测试用例有输出也会打印出来,反之,如果测试通过,则没有任何输出。