2010-09-23 1 views
9

Ant에서 Junit을 사용하여 Selenium Test를 수행했습니다. 내 테스트 케이스는 데이터 구동 테스트를 수행하기 위해 테스트 데이터가 포함 된 파일을 읽어야합니다. 테스트 케이스에 파일 이름을 포함해도 괜찮지 만, 데이터 파일이 저장된 디렉토리의 이름을 build.xml 파일에서 매개 변수화하고 싶습니다.Ant에서 Junit 테스트에 매개 변수를 전달하는 방법은 무엇입니까?

build.xml의 정보를 테스트 사례에 전달하는 가장 좋은 방법은 무엇입니까? ant 속성을 사용하는 것이 좋습니까? build.xml에서 Junit4 매개 변수를 주입 할 수 있습니까?

답변

11

junit 작업은 중첩 된 sysproperty 요소를 허용합니다.

<junit fork="no"> 
    <sysproperty key="mydatadir" value="${whatever}"/> 
    ... 
</junit> 

System.getProperty()을 사용하여 테스트 내에서 액세스 할 수 있습니다.

+0

병렬 테스트에서 동일한 속성 (sysproperty)을 사용하면 문제가 없습니다. 테스트 케이스 내부의 데이터를 검색하는 대신 Ant의 JUnit 매개 변수에 테스트 데이터를 주입 할 수 있습니까? – user405458

+0

각 병렬 스레드마다 다른 값이 필요합니까? junit 작업 jvmarg 요소가 있습니다.이 요소는 sysproperty와 비슷한 효과를 낼 수 있습니다. 그러나 이점은 보이지 않습니다. 데이터를 전달하는 데 태스크의 다른 옵션을 사용할 수 있는지는 분명하지 않습니다. –