2013-06-05 22 views

回答

1

不知道这里的“程序”是什么意思,我想你是指由TestNG运行的测试。

如果是这种情况,可以通过访问测试监听器类中的测试内容来完成。

a。创建扩展TestListenerAdapter的测试监听器类,套件属性可以从ITestContext获取。例如:

public class SomeTestListener extends TestListenerAdapter { 
     /** 
     * When the suite started. 
     * @param testContext Test context 
     */ 
     public final void onStart(final ITestContext testContext) { 
      XmlSuite suite = testContext.getSuite().getXmlSuite(); 
     // Get thread count   
      int threads = suite.getThreadCount(); 
     // Get preserve order setting 
     String order = suite.getPreserveOrder(); 
     // Get parallel attribute 
     String parallel = suite.getParallel(); 
      // Do something 
      super.onStart(testContext); 
     } 
    } 

b。将该类添加为testng.xml中的侦听器或以其他方式添加。 TestNG文档已经有详细信息:http://testng.org/doc/documentation-main.html#testng-listeners

+0

可爱,虽然我想通了,但感谢张贴解决方案,只是一个问题,虽然愚蠢,但是这个super.onStart做什么,我需要这个,而写作Listner –

+0

@ kapilA super.onStart只是在超级监听器类中调用原始方法,以确保我们不会错过任何东西。我认为这是一个好习惯。然而在这种情况下,我发现org.testng.TestListenerAdapter实际上onStart,onFinish,onTestStart方法是空的。但其他方法确实有内容。你可以从[Github上的TestListenerAdapter.java](https://github.com/cbeust/testng/blob/master/src/main/java/org/testng/TestListenerAdapter.java) –