2010-08-19 94 views
2

我在命令行像這樣調用TestNG的:如何在特定組(從命令行)中進行TestNG運行測試?

java org.testng.TestNG -groups "foo" testng.xml 

...僅爲運行測試帶註釋的意圖:

@Test(groups = { "foo" }) 

...但它的運行我所有的試驗。我需要更改我的testng.xml文件嗎?

<suite name="BarSuite" verbose="1"> 
    <test name="AllInPackage"> 
    <packages> 
     <package name="com.example.bar"/> 
    </packages> 
</test> 
</suite> 

是TestNG的無視-groups命令行參數,因爲的testng.xml說,運行在包中的所有測試?如果是這樣,我應該如何更改我的testng.xml文件?

回答

1

你明白了:如果你指定了一個testng.xml,它將優先於命令行開關。

就以下內容添加到您的XML文件:

<groups> 
    <run> 
     <include name="foo" /> 
    </run> 
    </groups> 
+0

這工作驗證。但是,我不需要指定一個testng.xml文件嗎?我可以修改我的testng.xml文件,因此可以使用-groups命令行選項(而不是爲每個要運行的組的子集都有單獨的testng.xml文件)? – 2010-08-19 22:24:56

+0

沒有回答上一個問題?如何從命令行指定組? – Nikem 2012-02-28 20:34:25

+0

正如我在我的回答中所說的,如果您使用-groups,則不能使用testng.xml。它是一個或另一個。 – 2012-02-29 16:22:59

0

的Java:
在特定羣體與TestNG的運行測試是很容易的:
1)打開你的命令行項目文件夾
例如:cd C:\FunctionalTests
2)按組運行測試

mvn test -Dgroups=group1,group2 

1組,第2組 - 名試驗組
example in java

NB的!
mvn test命令的工作,如果你的項目建設經理maven.
如果你不知道,什麼樣的建築使用的是經理,你可以通過檢查你的項目(即)的pom.xml存在

+2

儘管這段代碼片段是受歡迎的,並且可能會提供一些幫助,但如果它包含* how *和* why *的解釋](// meta.stackexchange.com/q/114762)問題。請記住,你正在爲將來的讀者回答這個問題,而不僅僅是現在問的人!請編輯您的答案以添加解釋,並指出適用的限制和假設。 – 2017-03-22 16:49:14

+0

感謝您的反饋!完成。 – 2017-03-23 13:27:00

相關問題