0

我有一个简单的游戏,它由两个项目组成:客户端和服务器。现在我想测试它们是否正确交互。 安装程序是:一个Maven-parent项目,以及server/client/integetion-test作为子模块。
我试图遵循本指南http://docs.codehaus.org/display/MAVENUSER/Maven+and+Integration+Testing,这是集成测试使用maven-failsafe插件。唉,它只是描述如何启动jetty-server,它可以作为插件使用。使用Maven进行客户端 - 服务器集成测试

如何以及在哪里开始我自己的客户端和服务器在这个配置(或有更好的)用于测试?我想这样做:首先,我希望在测试之前启动客户端和服务器。在jUnittest中,我想要一个Socket和一个Serversocket,一个连接到服务器,另一个连接到客户端。然后,我想通过此设置来管理客户端/服务器交互,并在两者之间进行验证,或者分别向它们发送特定消息,以验证答案。

是这样的可能吗,还是有更好的方法?

回答

1

我已经做了类似的东西,但可悲的是我现在没有可用的代码。但它是如下所示。在预集成测试中,使用ant exec任务启动服务器,并在后整合测试中停止服务器。

<plugin> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.7</version> 
    <executions> 
     <execution> 
      <id>start-server</id> 
      <phase>pre-integration-test</phase> 
      <configuration> 
       <target> 
        <exec executable="command to start your server"> 
       </target> 
      </configuration> 
      <goals> 
       <goal>run</goal> 
      </goals> 
     </execution> 
     <execution> 
      <id>stop-server</id> 
      <phase>post-integration-test</phase> 
      <configuration> 
       <target> 
        <exec executable="command to stop your server"> 
       </target> 
      </configuration> 
      <goals> 
       <goal>run</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 
相关问题