2012-01-02 2 views
5

허드슨이 JUnit을 읽는 것처럼 보이는 XML 자체를 생성하고 있습니다. 그것은 허드슨 웹 GUI에 "패키지"목록이 무엇인지 알 수 없다는 점을 제외하고는 훌륭하게 작동합니다. 허드슨에 의해 "패키지"로 해석 될 XML을 어떻게 만들 수 있습니까?허드슨의 JUnit XML "packages"

<testsuites> 
<testsuite> 

    <testcase classname="class\name\that\is\really\folders" name="test_name.log" time="231"> 
    </testcase> 
</testsuite> 
</testsuites> 

허드슨이 나열됩니다 같은 :

패키지 : (루트)
등급 : test_name.log

답변

1
: 그 \는 \ 정말 \ 폴더
테스트 이름입니다 \ 클래스 \ 이름

젠킨스는 testsuite 태그의 name 속성에서 패키지 이름을 사용한다고 생각합니다. 나는 그 전에했지만, 내가 잘못을 증명하려고 할 때 나는이 시간을 ;-)있어 - 이

<testsuites> 
<testsuite name="package.name.of.your.testclass"> 

    <testcase classname="class\name\that\is\really\folders" name="test_name.log" time="231"> 
    </testcase> 
</testsuite> 
</testsuites> 
6

@pushy처럼 XML을 변경 시도 할 수 있습니다. 그것이 "패키지"로 인정하는

<testsuites> 
<testsuite name="package.name.of.your.testclass"> 

    <testcase classname="package.name.of.your.testclass.class\name\that\is\really\folders" name="test_name.log" time="231"> 
    </testcase> 
</testsuite> 
</testsuites> 

당신 있는 TestSuite 이름으로 각 테스트 케이스의 클래스 이름을 접두사해야합니다.

2

중복성이 필요하지 않습니다!

  • <testsuite> 요소의 name 속성이 적어도 두 개의 점으로 구분 된이 확인 대신 classname
  • name 속성을 사용하여 다음과 같은 경우 젠킨스 멋지게 패키지와 클래스 이름을 유추 "섹션을." 이제 모든 동봉 된 <testcase> 요소는 패키지와 클래스를 가져옵니다. 마지막 부분은 클래스 이름이됩니다. 나머지는 패키지 이름이됩니다. 이처럼

:

<testsuites> 
    <testsuite name="packagename.classname"> 
     <testcase name="test_name.log" time="231"></testcase> 
    </testsuite> 
</testsuites> 
+0

이것은 당신이 (내 실제 목표이었다) 계층 구조로 모듈을 구성 할 수 없습니다. – whitey04