2013-04-03 31 views
0

我知道通過創建測試套件,我可以運行我所有的類文件,使用像硒只運行幾個方法

suite.addTestSuite(TestCase3.class); 
suite.addTestSuite(TestCase2.class); 
suite.addTestSuite(TestCase1.class); 

但是代碼,如果我不想運行在一個類文件中的所有方法?我想在測試類中只運行特定的測試方法,該怎麼做?

回答

0

有用!

它有很好的文檔記錄,併爲定製測試執行提供了大量有用且易於使用的功能。

根據您的要求,TestNG小組將完成這項工作。

import org.testng.annotations.Test; 

@Test(groups = {"groupA"}) 
public class ATest{ 

    @Test(groups = {"group1"}) 
    public void testA1() { 

    } 

    @Test(groups = {"group2"}) 
    public void testA2() { 

    } 

} 

&

import org.testng.annotations.Test; 

@Test(groups = {"groupB"}) 
public class BTest{ 

    @Test(groups = {"group1"}) 
    public void testB1() { 

    } 

    @Test(groups = {"group2"}) 
    public void testB2() { 

    } 

} 

我想你已經知道哪些方法,如果你啓動 「組1」 的方法正確運行?

0

您將需要進一步構建您的套件。 類似於:

XmlSuite suite = new XmlSuite(); 

    XmlTest test = new XmlTest(suite); 
    test.setName("TmpTest1"); 
    test.setVerbose(3); 
    List<XmlClass> classes = new ArrayList<XmlClass>(); 
    XmlClass cl = new XmlClass(); 
    cl.setName("my.pkg.Tests"); 
    XmlInclude incMet = new XmlInclude("testSimpleTrue"); 
    List<XmlInclude> incMetList = new ArrayList<XmlInclude>(); 
    incMetList.add(incMet); 
    cl.setIncludedMethods(incMetList); 
    classes.add(cl); 

    test.setXmlClasses(classes); 

    List<XmlSuite> suites = new ArrayList<XmlSuite>(); 
    suites.add(suite); 

    testng.setXmlSuites(suites);