2017-02-15 93 views
-1

我有以下testNg XML文件。我想運行Test1而不是Test2。我該怎麼做?我嘗試使用「排除」關鍵字排除Test2的方法。但似乎並沒有這樣做。我無法更改實際的代碼。不幸的是,這是被禁止的。我所能做的就是對這個XML進行更改並運行測試。有什麼辦法可以忽略Test2,同時仍然可以運行Test1?我正在尋找比評論代碼更優雅的方式。排除testNg中的測試

<?xml version="1.0" encoding="UTF-8"?> 
<suite name="Suite" parallel="false"> 
<parameter name="xxx" value="yyy" /> 
<parameter name="zzz" value="aaa" /> 
<parameter name="user" value="1" /> 

<test name="Test1"> 
    <parameter name="browser" value="Chrome" /> 
    <define name = "regression"> 
      <include name = "spot" /> 
      <include name = "sanity" /> 
     </define> 
    <groups> 
     <run> 
      <include name="regression" /> 
     </run> 
    </groups> 
     <classes> 
      <class name="class2" /> 
      <method> 
       <include name="method1" /> 
       <include name="method2" /> 
      </method> 
     </classes> 
</test> 

<test name="Test2"> 
    <parameter name="browser" value="Firefox" /> 
     <define name = "regression"> 
      <include name = "spot" /> 
      <include name = "sanity" /> 
     </define> 
    <groups> 
     <run> 
      <include name="spot" /> 
      <exclude name="sanity" /> 
     </run> 
    </groups> 
     <classes> 
      <class name="class2" /> 
      <method> 
       <include name="method1" /> 
       <include name="method2" /> 
      </method> 
     </classes> 
</test> 



</suite> <!-- Suite --> 

回答

0

在test2的替換包括在各個領域

通過這樣做是爲了排除你會排除從您的代碼字段或方法

+0

我試過在方法中包括'exclude'秒。但它似乎並不奏效。 – zeroth

+0

@zeroth劑量理智運行測試2 –

+0

謝謝您指出@rishit_s。方法(方法1和方法2)包含在「點」組中。所以,我猜「點」中的「包含」是在方法名稱中包含「排除」。 – zeroth

0

如果你不想跑<test name="Test2">,只是將其刪除從套房。

xml套件文件背後的想法是定義一個運行。 看起來你有很多運行的定義,所以你應該有很多套件文件。 如果你想套件文件之間共享的東西,你可以用<suite-file>這就好比是 「舶來品」:http://testng.org/testng-1.0.dtd.php

Test1的-suite.xml

<?xml version="1.0" encoding="UTF-8"?> 
<suite name="Suite" parallel="false"> 
    <parameter name="xxx" value="yyy" /> 
    <parameter name="zzz" value="aaa" /> 
    <parameter name="user" value="1" /> 

    <test name="Test1"> 
     <parameter name="browser" value="Chrome" /> 
     <define name = "regression"> 
      <include name = "spot" /> 
      <include name = "sanity" /> 
     </define> 
     <groups> 
      <run> 
       <include name="regression" /> 
      </run> 
     </groups> 
     <classes> 
      <class name="class2" /> 
      <method> 
       <include name="method1" /> 
       <include name="method2" /> 
      </method> 
     </classes> 
    </test> 
</suite> 

兩個套房。 xml

<?xml version="1.0" encoding="UTF-8"?> 
<suite name="Suite" parallel="false"> 
    <suite-files> 
     <suite-file>Test1-suite.xml</suite-file> 
    </suite-files> 
    <test name="Test2"> 
     <parameter name="browser" value="Firefox" /> 
      <define name = "regression"> 
       <include name = "spot" /> 
       <include name = "sanity" /> 
      </define> 
     <groups> 
      <run> 
       <include name="spot" /> 
       <exclude name="sanity" /> 
      </run> 
     </groups> 
     <classes> 
      <class name="class2" /> 
      <method> 
       <include name="method1" /> 
       <include name="method2" /> 
      </method> 
     </classes> 
    </test> 
</suite>