在远程云服务器上安装的jboss上运行arquillian测试

时间:2014-01-04 09:24:31

标签: cloud jboss-arquillian

我可以使用eclipse / terminal在本地机器上运行arquillian测试。我尝试从本地机器运行arquillian到部署在云服务器上的jboss。我确信正确添加了依赖项。 这是我登录云服务器的方式:

ssh -p xxxx root@cloud.abcd.pqr.wxy.xyz

arquillian.xml的一部分:

<container qualifier="jboss_remote" default="true">
    <configuration>
        <property name="managementAddress">cloud.abcd.pqr.wxy.xyz</property>
        <property name="managementPort ">9999</property>
        <property name="username">root</property>
        <property name="password">shroot</property>
        <property name="outputToConsole">true</property>
        <property name="allowConnectingToRunningServer">true</property>
    </configuration>
</container>

运行arquillian测试时请查看控制台输出

org.jboss.arquillian.container.spi.client.container.LifecycleException: Could not start container
    at org.jboss.as.arquillian.container.managed.ManagedDeployableContainer.startInternal(ManagedDeployableContainer.java:167)
    at org.jboss.as.arquillian.container.CommonDeployableContainer.start(CommonDeployableContainer.java:113)
    at org.jboss.arquillian.container.impl.ContainerImpl.start(ContainerImpl.java:199)
Caused by: java.util.concurrent.TimeoutException: Managed server was not started within [60] s
    at org.jboss.as.arquillian.container.managed.ManagedDeployableContainer.startInternal(ManagedDeployableContainer.java:163)
    ... 77 more

我注意到的另一件事是,当我将managementAddress和managementPort设为127.0.0.1:9999时,在arquillian.xml中,它可以工作。 但是当我尝试将managementAddress和managementPort作为myIP:9999时,它不起作用。

我无法使用arquillian将远程Jboss与managementAddress和managementPort一起部署为myIP:9999的问题是我没有正确配置我的standalone.xml,这是我在standalone.xml中修改的内容

<interfaces>
    <interface name="management">
        <any-address/>
    </interface>
    <interface name="public">
        <any-address/>
    </interface>
    <interface name="unsecure">
        <any-address/>
    </interface>
</interfaces>

现在,当我试图在远程jboss上运行arquillian测试时,arquillian部署了收缩包装耳,但无法运行测试用例。这是我得到的例外:
Tests run: 5, Failures: 0, Errors: 5, Skipped: 0, Time elapsed: 5.118 sec <<< FAILURE! basicSanitytest(test.integration.pm.parser.ejb.PMFileParserTest) Time elapsed: 0.019 sec <<< ERROR! java.lang.IllegalStateException: Error launching test test.integration.pm.parser.ejb.PMFileParserTest public void test.integration.pm.parser.ejb.PMFileParserTest.basicSanitytest() at org.jboss.arquillian.protocol.servlet.ServletMethodExecutor.invoke(ServletMethodExecutor.java:126) at org.jboss.arquillian.container.test.impl.execution.RemoteTestExecuter.execute(RemoteTestExecuter.java:120) .......... Caused by: java.lang.IllegalStateException: Error launching request at http://0.0.0.0:8080/test/ArquillianServletRunner?outputMode=serializedObject&className=test.integration.pm.parser.ejb.PMFileParserTest&methodName=basicSanitytest. No result returned at org.jboss.arquillian.protocol.servlet.ServletMethodExecutor.executeWithRetry(ServletMethodExecutor.java:162) at org.jboss.arquillian.protocol.servlet.ServletMethodExecutor.invoke(ServletMethodExecutor.java:122) ... 90 more

3 个答案:

答案 0 :(得分:1)

看起来这是arquillian的问题,已经报告并使用以下版本修复:

<dependency> <groupId>org.jboss.arquillian.protocol</groupId> <artifactId>arquillian-protocol-servlet</artifactId> <version>1.1.2.Final</version> </dependency>

答案 1 :(得分:1)

当你应该使用遥控器时,看起来你正试图使用​​Arquillian的托管容器连接器。

用户名/密码应该是JBoss管理控制台的用户名/密码(通常是admin / admin)

答案 2 :(得分:0)

经过多次尝试,它没有用,所以我们所做的就是在服务器jenkins上安装了jboss,现在local-arquillian正在工作。