求好手点拨一个“特殊结构的Java的IM聊天系统”的工程测试环境的搭建方案

求高手点拨一个“特殊结构的Java的IM聊天系统”的工程测试环境的搭建方案.
高手,您好:
    我在写一个IM通信工具,现在我的代码结构是:
    在本地有多个端点进行联合测试,我的项目是采用Java的Socket技术进行的通信功能实现.
    我的每一个端点,都进行了:
    Socket对象的创建和ServerSocket对象的创建.
    连接方式我采用了“短连接”的方式,并且,我的每一个端点,都有十几个线程在等待“接受任务”.
    现在我需要测试:
    由于ServerSocket的对象所占用的端口在本地的系统中,是“不能够进行重复的”,而我的系统要进行通信,必须要进行:
    两个C端用户的程序同时进行运行,才能够让我的两个C端能够借助中间的服务器,进行通信的功能实现.
    现在我有一个问题:
    在本地,打开了两个C端之后,肯定会占用相同的ServerSocket对象的端口.
    从而造成:
    JVM Bind,的错误.
    但是 ,如果我要不进行ServerSocket的实例的创建的话,又会造成我的项目在实现“经过服务器告知自己好友的IP后”“P2P文件对传”这一块的功能上,不能够进行:“自己的通信对象的身份获取”的问题..
    我的服务器的IP地址,我也想进行:
    不将IP地址固定到C端和S端的系统程序中,让我的系统能够:
    面向运营商的IP与域名的变化给予“兼容”的能力.
    现在我希望能够在我的本地开出两个C端进行以S端为中心的通信测试.
    希望高手能够指导:
    通常行业里专业的公司,在面对这个测试需求的时候,采用什么办法进行测试?
    是不是只能进行:
    将第二个C端的ServerSocket的端口号,进行一下修改...?
    还有更加好用的专业办法吗...?
    谢谢高手!!

------解决方案--------------------
服务器端监听一个端口就行了。
客户端自动分配的。不冲突
------解决方案--------------------
服务端的程序为什么还要开2个呢