我的方案是在jboss托管上启动arquillian测试。 实际上我的耳朵已经部署在Jboss上了,所以我没有在ShrinkWrap上放置任何存档。 我的测试在testng上运行。 为了启动Jboss,我提供了一个自定义maven配置文件,如arquillian文档所示:
<profile>
<id>arquillian-jbossas-managed</id>
<dependencies>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-web-6.0</artifactId>
<version>2.0.0.Final</version>
<type>pom</type>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.apache.xalan</groupId>
<artifactId>xalan</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-arquillian-container-managed</artifactId>
<version>7.1.1.Final</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.arquillian.protocol</groupId>
<artifactId>arquillian-protocol-servlet</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
实际上我的Jboss永远不会开始,而且我无法弄清楚发生了什么。 Maven调试不提供他试图启动老板的事实的任何信息。
Arquillian上的什么触发了服务器的启动? 我可以依赖某种钩子吗?
非常感谢
答案 0 :(得分:0)
我终于找到了我的错误:
我没有在pom中包含这种依赖:
<dependency>
<groupId>org.jboss.arquillian.testng</groupId>
<artifactId>arquillian-testng-container</artifactId>
<scope>test</scope>
</dependency>
没有它没有异常它抛出但服务器无法启动。 实际上有点棘手......
答案 1 :(得分:0)
对于Arquillian触发器,服务器TestNG-tests类的启动也必须扩展Arquillian。
@Test(groups = "test")
public class TestServiceNGTest extends Arquillian {
@Deployment
public static WebArchive createDeployment() {
WebArchive war = ShrinkWrap.create(WebArchive.class).addClass(TestService.class);
System.out.println(war.toString(true));
return war;
}
// ... tests sources
}