如何对客户端服务器代码进行单元测试
我目前正在编写一个 Java 客户端服务器应用程序。所以我想实现两个库,一个用于客户端,一个用于服务器。客户端服务器通信有一个非常严格的协议,我不想用JUnit进行测试。
作为构建工具 im 使用 Maven 和 Husdon 服务器继续集成。
实际上,我没有任何好的想法如何测试这些客户端/服务器库。
我有以下方法:
只需编写一个虚拟客户端来测试服务器,并编写一个虚拟服务器来测试客户端。弊:不幸的是,这将导致许多额外的工作。我无法100%确定客户端和服务器可以一起工作,因为我不确定测试是否完全相同。
编写一个单独的测试项目,一起测试客户端和服务器。
缺点:单元测试不属于项目本身,因此Hudson不会自动运行它们。每个在其中一个库中更改任何内容的人都必须手动运行测试,以确保一切都是正确的。另外,我不会收到任何代码覆盖率报告。
有没有更好的方法来测试这样的代码?也许测试一个Maven多模块项目,或类似的东西。
我希望任何人都能为这个问题找到一个好的解决方案。
谢谢。