8

是否有任何开源的高级工具可以促进和简化使用 GUI 的实验性网络协议 (TCP/UDP) 的开发?

基本上,类似于动态状态机编辑器,它允许您定义“数据包”、“消息”、“状态”、“验证器”、“处理程序”等。

优选地,这样的工具将足够全面以处理协议的所有相关方面(即客户端和服务器),以便可以将高级协议描述序列化为 XML/RDF 文件,在其中它可以用于动态创建实现协议的应用程序代码(即在 Python 中)。

4

2 回答 2

3

放弃文本编辑器的 GUI,进入协议规范语言的世界。这些工具中的大多数都对某些协议进行了描述,试图证明它没有被破坏,并生成一个实现和测试。这里有一些可以帮助您入门,但还有更多:

于 2009-03-13T23:31:04.487 回答
1

如果你无论如何都要瞄准一个最终的 Python 目标,谁不从一开始就推出你自己的测试平台(在 Python 中)?

状态机在代码中构建起来并不难,而且它们比 GUI 中的图片更容易明确地阅读和验证,尤其是当它们变得复杂时。

在我看来,使用嵌入式 DSL 比使用基于 GUI 的设计器做得更好。

编辑:如果,正如您在评论中所说,您只是将 python 作为示例,我建议您使用 timday 的答案。如果您实际上并不担心嵌入 python,请按照他的建议使用预先存在的 DSL。

于 2009-03-13T22:42:49.220 回答