2010-10-07 60 views
2

我想勞克我所有的集成測試(組= inttest)無法運行測試,所以我寫這篇文章的XML配置:TestNG的:我爲什麼基於

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 
<suite name="Service Integration Test" parallel="none"> 
    <test verbose="1" name="Service Integration Test"> 
    <groups> 
     <run> 
     <include name="inttest.*"/> 
     </run> 
    </groups> 
    </test> 
</suite> 

但是從的IntelliJ跑時,沒有測試跑了。 如果我添加一個「類」部分是這樣的:「inttest *」

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 
<suite name="Service Integration Test" parallel="none"> 
    <test verbose="1" name="Service Integration Test"> 
    <groups> 
     <run> 
     <include name="inttest.*"/> 
     </run> 
    </groups> 

    <classes> 
    <class name="com.service.MyTestClass" /> 
    </classes> 
    </test> 
</suite> 

則該組的所有測試包含在類com.service.MyTestClass都跑了......

什麼問題?

回答

4

正如您正確發現的那樣,您需要告訴TestNG應該查找哪些類以查找您指定的組。

如果您願意,也可以指定整個軟件包。至於爲什麼所有的測試方法都運行,我需要看看這個班級來弄清楚發生了什麼。也許你通過在類級別指定@Test註釋使所有測試方法屬於一個「inttest」組?

+1

謝謝塞德里克。我已經解決了關於'所有測試方法正在運行'的問題。在指定班級時,按照預期啓動所選組的測試。對於軟件包,我嘗試使用此功能時應該犯錯誤。它工作正常。我期待太多的組功能:我想沒有任何包或類,整個代碼庫將被尋找組匹配... – Guillaume 2010-10-08 08:58:13

相關問題