2010-04-12 4 views
0

저는 ETL 구성 요소 중 하나에 대한 단위 테스트를 허용합니다. 일반적인 Java 테스트 클래스 및 testng.xml에있는 테스트 정의의 수와 함께 testNG를 사용하여 클래스에 다양한 매개 변수를 전달하고 싶습니다. 오라클 ETL 사용자는 Java 코드를 변경하지 않고 새 테스트를 추가 할 수 있어야하므로 주석 대신 xml suite 파일을 사용해야합니다.주석이없는 testNG 테스트 그룹화

질문

testng.xml의 그룹 테스트하는 방법이 있나요? (유사가 주석으로 수행하는 방법에) 내 말은 내가 확인했습니다

<group name="first_group"> 
    <test> 
    <class ...> 
    <parameter ...> 
    </test> 
</group> 

<group name="second_group"> 
<test> 
    <class ...> 
    <parameter ...> 
    </test> 
</group> 

같은 뭔가 testng.dtd 같은 구문이 허용되지 않습니다 알아 냈어.하지만 거기에 그룹화 수있는 해결 방법은 무엇입니까? 사전

답변

0

에서

덕분에 당신은 testng.xmlgroups을 지정할 수 있습니다 다음 -groups

<test name="Regression1"> 
    <groups> 
    <run> 
     <exclude name="brokenTests" /> 
     <include name="checkinTests" /> 
    </run> 
    </groups> 
    .... 
+0

감사합니다, Brian.But 즉 내가 원하는 게 아니에요 : 단일 메타 그룹의 수 집계 그룹, 나는에 그룹 수업에 필요하면서 다시 메타 group.Coming 귀하의 예제에서 문제는 각 "brokenTests"및 "checkinTest"그룹에 특정 테스트 (다른 ​​그룹이 아닌)를 추가하는 방법입니다. – diy

0

아니,이 순간에 할 수 없습니다 사용하여 TestNG를 실행합니다.

엄밀히 말하자면, 리팩토링으로 인해 전체 빌드가 중단 될 수 있으므로 Java 코드를 가리키는 정보를 XML에 추가하는 것이 좋지 않습니다.

예를 들어 메소드 또는 클래스 이름의 이름을 변경하면 XML을 업데이트해야한다는 사실을 기억할 때까지 테스트가 신기하게 중단 될 수 있습니다.

testng-users 메일 링리스트에 올려주세요. 그런 기능에 관심이 있는지 알 수 있습니다.

-

세드릭

+0

감사합니다. Cedric.is가 Java 코드 외부에서 테스트 그룹화를 허용하는 방법은 있습니까? , 가장 매력적인 접근법은 그룹 당 xml 테스트 스위트를 만드는 것입니다. – diy

+0

목록에서 해결할 제안을했습니다. 여기에서 반복하겠습니다 : 사전 테스트 작업으로 직접이 작업을 수행 할 수 있습니다. XML 형식의 정보를 가져 와서 해당 Java 소스 파일을 가져와 올바른 위치에있는 모든 주석이 포함 된 TestNG 소스 파일을 생성하는 코드 생성기를 구현하십시오. 그런 다음 해당 파일에서 TestNG를 실행합니다. –