2013-10-16 1 views
1

최근 Java 테스트에서 사용되는 일부 등록 정보 파일에서 값을 구성 할 수 있기를 원합니다. 여기에 내가 대상 폴더에있는 것을 볼 수 있습니다 mvn install -Denv=dev을 실행하면 속성 속성 파일이 올바른 값을 받고 있지만, 테스트 동안 자리 표시 자입니다,maven으로 필터링 된 propery 파일로 테스트 실행

targetEnv=${target.env} 

파일

<profiles> 
     <profile> 
      <id>env-dev</id> 
      <activation> 
       <property> 
        <name>env</name> 
        <value>dev</value> 
       </property> 
      </activation> 
      <properties> 
       <target.env>http://myurl.com</target.env> 
      </properties> 
     </profile> 
    </profiles> 
    <build> 
     <resources> 
      <resource> 
       <directory>src/test/java</directory> 
       <filtering>true</filtering> 
      </resource> 
     </resources> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.1</version> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-surefire-plugin</artifactId> 
       <configuration> 
        <suiteXmlFiles> 
         <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> 
        </suiteXmlFiles> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

내 pom.xml 파일입니다 테스트가 실행될 때 실제 가치를 사용하고자하는 곳에 사용됩니다.

내가 뭘 잘못하고 있니?

덕분에 내가 잘못 뭐하는 거지

답변

0

?

우선 환경을 전환하는 데 프로필을 사용하지 마십시오. 특히 단위 테스트는 어떠한 환경 설정도 인식해서는 안됩니다. 이 경우에는 제거하십시오. 테스트 리소스를 필터링하려면 대신 <testResources/> 태그를 사용해야합니다.

관련 문제