2013-08-29 1 views
0

나는 데이터 프로젝트와 EJB 프로젝트를 만들었습니다. 이제 JUnit을 사용하여 위의 두 가지를 테스트하는 또 다른 Arquillian 프로젝트를 만들었습니다. 어떻게 내 Arquillian 프로젝트에서 테스트 할 수 있도록하기 위해 내 EJB를지도하는 pom.xml 파일Arquillian JUnit 프로젝트에 외부 EJB를 추가하는 방법은 무엇입니까?

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>org.arquillian.unit.test</groupId> 
    <artifactId>arquillian-test</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <packaging>jar</packaging> 

    <name>arquillian-test</name> 
    <url>http://maven.apache.org</url> 

    <properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    </properties> 
    <dependencyManagement> 
    <dependencies> 
     <dependency> 
     <groupId>org.jboss.arquillian</groupId> 
     <artifactId>arquillian-bom</artifactId> 
     <version>1.1.1.Final</version> 
     <scope>import</scope> 
     <type>pom</type> 
     </dependency> 
    </dependencies> 
    </dependencyManagement> 
    <repositories> 
    <repository> 
     <id>jboss-public-repository-group</id> 
     <name>JBoss Public Repository Group</name> 
     <url>http://repository.jboss.org/nexus/content/groups/public/</url> 
     <layout>default</layout> 
     <releases> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
     </releases> 
     <snapshots> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
     </snapshots> 
    </repository> 
    <repository> 
     <id>jboss-deprecated</id> 
     <name>JBoss Deprecated</name> 
     <url>https://repository.jboss.org/nexus/content/repositories/deprecated/</url> 
     <layout>default</layout> 
     <releases> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
     </releases> 
     <snapshots> 
     <enabled>false</enabled> 
     </snapshots> 
    </repository> 
    <repository> 
     <id>jboss-maven2-brew</id> 
     <name>JBoss Maven 2 Brew Repository</name> 
     <url>http://repository.jboss.org/maven2-brew/</url> 
     <layout>default</layout> 
     <releases> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
     </releases> 
     <snapshots> 
     <enabled>false</enabled> 
     </snapshots> 
    </repository> 
    </repositories> 
    <pluginRepositories> 
    <pluginRepository> 
     <id>jboss-public-repository-group</id> 
     <name>JBoss Public Repository Group</name> 
     <url>http://repository.jboss.org/nexus/content/groups/public/</url> 
     <releases> 
     <enabled>true</enabled> 
     </releases> 
     <snapshots> 
     <enabled>true</enabled> 
     </snapshots> 
    </pluginRepository> 
    </pluginRepositories> 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <version>2.3.2</version> 
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
     </configuration> 
     </plugin> 
    </plugins> 
    <testResources> 
     <testResource> 
     <directory>FocalColectEJB/com/focalinfo/service</directory> 
     </testResource> 
    </testResources> 
    </build> 
    <dependencies> 
    <dependency> 
     <groupId>org.jboss.spec</groupId> 
     <artifactId>jboss-javaee-6.0</artifactId> 
     <version>1.0.0.Final</version> 
     <type>pom</type> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.8.1</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.jboss.arquillian.junit</groupId> 
     <artifactId>arquillian-junit-container</artifactId> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.inject</groupId> 
     <artifactId>javax.inject</artifactId> 
     <version>1</version> 
    </dependency> 
    </dependencies> 
    <profiles> 
    <profile> 
     <id>jbossas-managed-5.1</id> 
     <dependencies> 
     <dependency> 
      <groupId>org.jboss.arquillian.container</groupId> 
      <artifactId>arquillian-jbossas-managed-5.1</artifactId> 
      <version>1.0.0.CR3</version> 
     </dependency> 
     <dependency> 
      <groupId>org.jboss.jbossas</groupId> 
      <artifactId>jboss-server-manager</artifactId> 
      <version>1.0.3.GA</version> 
     </dependency> 
     <dependency> 
      <groupId>org.jboss.jbossas</groupId> 
      <artifactId>jboss-as-client</artifactId> 
      <version>5.1.0.GA</version> 
      <type>pom</type> 
     </dependency> 
     </dependencies> 
    </profile> 
    </profiles> 
</project> 

을 만들었습니다?

+0

EJB 모듈을 Aruillian 프로젝트에 종속성으로 추가 할 수 없습니까? –

답변

0

몇 가지 옵션이 있습니다.

  1. EJB와 다른 JAR이 앱과 별도로 배포되는 경우 테스트 케이스에 여러 배포를 사용할 수 있습니다. 하나만 "테스트 가능"하지만 둘 다 배포 할 수 있습니다. ShrinkWrap의 Maven 해석기를 사용하여이 외부 JAR 파일의 읽기를 단순화 할 수 있습니다.
  2. WAR 또는 EAR에 래핑 된 경우 해당 WAR 또는 EAR을 배치로 사용하십시오.
+0

두 번째 옵션은 저에게 효과적이었습니다. 감사! –