2017-07-27 102 views
0

我有一個測試,它爲testng中的測試組設置了環境變量,我想跳過testng報告中的測試計數。如何避免或跳過testng或reportng報告中的測試

我的testng.xml的樣子:

<suite name="sanity" verbose="1"> 
    <listeners> 
     <listener class-name="org.uncommons.reportng.HTMLReporter"/> 
     <listener class-name="org.uncommons.reportng.JUnitXMLReporter"/> 
    </listeners> 
<test name="tes1"> 
     <classes> 
      <class name="com.group.SantiyStartUp"/> 
      <class name="com.group.Test1"/> 
      <class name="com.group.Test2"/> 
     </classes> 
    </test> 
</suite> 

SanityStartUp設置靜態變量"environment""Sanity"Test1Test2類,將檢查environment變量是Sanity然後做一些動作。

它工作正常,但我擔心的是SanityStartUp測試顯示在報告中作爲一個測試,我想避免。

任何人都可以幫助我。

+0

爲什麼不將設置邏輯移動到BeforeSuite或BeforeTest方法? – Grasshopper

+0

是否通過參數化? –

回答

2

您可以從評論中爲您提供的簡單解決方案開始 - 使用@BeforeSuite甚至@BeforeTest而不是@Test

此外,您還需要了解如何在TestNG中添加偵聽器。您可以在代碼的任何地方,testng.xml或classpath中添加監聽器,並將其應用於所有類和測試。所以你可能試着編輯你的監聽器,忽略一些類或測試。

最後,您可以使用命令行將它們作爲JVM的系統環境變量傳遞,並在測試中讀取它們。