2012-08-09 44 views
0

我正在運行TestNG,我試圖從全套套件中只運行特定組,但只有第一個測試按組進行過濾。在套件中的第一個測試中測試NG過濾器只有組

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 
<suite name="Managemenet" parallel="methods" thread-count="100" preserve-order="false" > 
<test verbose="2" name="Chen Tests" parallel="tests" thread-count="100" > 
    <groups> 
      <define name="Sanity"> 
       <include name="mgmt_sanity"></include> 
      </define> 
     <define name="Regression"> 
       <include name="mgmt_regression"></include> 
       <include name="mgmt_sanity"></include> 
      </define> 
     <define name="Smoke"> 
       <include name="mgmt_smoke"></include> 
      </define> 

    </groups> 


    <classes> 
     <class name="com.chen.auto.mgmt.chenTests"> 
     </class> 
    </classes> 
</test> 

<test verbose="2" name="Dudu Tests" parallel="tests" thread-count="100" > 
    <groups> 
      <define name="Sanity"> 
       <include name="mgmt_sanity"></include> 
      </define> 
     <define name="Regression"> 
       <include name="mgmt_regression"></include> 
       <include name="mgmt_sanity"></include> 
      </define> 
     <define name="Smoke"> 
       <include name="mgmt_smoke"></include> 
      </define> 

    </groups> 
    <classes> 
     <class name="com.chen.auto.mgmt.dudu"> 
     </class> 
    </classes> 
</test> 
</suite> 

還有一個類似的open question,但沒有答案。
它看起來像一個錯誤。因此,即使使用所有並行選項,我也無法使用ReportNG。

有人如何使它工作?

回答

0

根據TestNG documentation您可以定義groups of groups,這是你縫隙要做的事情。然而,這僅僅是創建組,你仍然需要定義要運行的羣體,通過指定<run>元素:

<test name="MyTest"> 
    <groups> 
    <define name="GroupOfGroups1"> 
     <include name="group1"/> 
     <include name="group2"/> 
    </define> 

    <define name="all"> 
     <include name="GroupOfGroups"/> 
     <include name="group3"/> 
    </define> 

    <run> 
     <include name="all"/> 
    </run> 
    </groups> 

    <classes> 
    <class name="org.test.MyTest"/> 
    </classes> 
</test> 

這定義了所有應該由TestNG的調用來執行測試。並行設置對運行中包含哪些測試沒有影響,而是將如何執行這些選定的測試。您可以在相同的documentation page中閱讀更多關於TestNG中parallel running的測試。

+0

感謝您的答案,但我需要在同一個XML套裝中運行多個測試(在我將定義組羣)。與您的答案我不能運行幾個測試,只有一個,這是我的問題。當我運行幾個 testNG組過濾器將正常工作,但只有在第一之後,它不會過濾 – 2012-08-12 05:35:25

0

升級到testNg 6.7 - 它會解決您的問題。

+0

哇很好的答案;)謝謝 – 2012-08-12 11:06:24

+0

謝謝,好問題。 – DuduGold 2012-08-12 11:07:33

相關問題