简体   繁体   中英

Add parameters to @beforeclass dynamically in TestNG

I need to add Parameters to @BeforeClass method with TestNG Class. I'm running a TestSuite dynamically with this code:

List<XmlSuite> suites = getXmlTestSuiteForUI(xmlName);

TestNG testNG = new TestNG();

testNG.setXmlSuites(suites);
testNG.setPreserveOrder(true);
testNG.addListener(testListenerAdapter);

testNG.run();

How can I add parameters to the @BeforeClass Method??

Somethig like this but instead of test.setParameters something like beforeclass.addParameters.

for (XmlSuite suite : suites){
    for(XmlTest test : suite.getTests()){
        test.setParameters(params);
    }
}

setParameters is available on XmlClass too.

for (XmlSuite suite : suites) {
    for(XmlTest test : suite.getTests()) {
        for(XmlClass clazz : test.getXmlClasses()) {
            clazz.setParameters(params);
        }
    }
}

The solution is adding parameters into suite.

for (XmlSuite suite : suites) {
    suite.setParameters(parameters);
}

Test.class

@BeforeClass
@Parameters({"accountID"})
public void tearUp(String accountID) throws Exception {
    super.tearUp(Integer.valueOf(accountID));
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM