Hi Malithi & Krishantha,
I created a similar scenario and analyse the method call order and noticed that @Factory is get called first. @BeforeTest and @AfterTest that are in separate class execute only once. But @BeforeTest and @AfterTest in the same class with @Factory ,@BeforeClass..,@Test are get execute multiple times (equal to the how much instance that that has been created in the @Factory). Malithi, Until we find the exact reason for this behaviour you can move your @BeforeTest and @AfterTest to a different class. Also share your Test Class with us. Thanks and Best Regards, Saneth Dharmakeerthi Senior Software Engineer WSO2, Inc. Mobile: +94772325511 On Mon, Mar 16, 2015 at 11:08 PM, Krishantha Samaraweera < krishan...@wso2.com> wrote: > Hi Malithi, > > On Mon, Mar 16, 2015 at 6:44 PM, Malithi Edirisinghe <malit...@wso2.com> > wrote: > >> Hi All, >> >> I'm using Factories in TestNG to instantiate tests dynamically for >> different parameter sets. And I have configured the test class inside a >> <test> block in the testng.xml as below. >> >> <test name="Test - IS - OpenID" preserve-order="true" parallel="false"> >> <classes> >> <class >> name="org.wso2.identity.integration.test.openid.OpenIDSSOTestCase" /> >> </classes> >> </test> >> >> When running this test on the TAF 4.3.1 I found that the methods >> annotated with 'BeforeTest' and 'AfterTest' runs for each test instance >> instantiated with the factory. >> But when running the same test on an earlier version of TAF, methods >> annotated with 'BeforeTest' and 'AfterTest' are executed only once, which >> is the expected behavior [1]. >> >> I found that TAF 4.3.1 is using TestNG 6.1.1 where as earlier versions of >> TAF use TestNG 6.8. Seems this issue is with TestNG 6.1.1 version. This is >> also reported in [2]. >> >> Is there a specific reason to downgrade the TestNG version in TAF 4.3.1 ? >> > > Nope we haven't downgraded testNG in TAF 4.3.1. in your old tests modules, > 6.8 version might be explicitly specified. We only recommend to go with > testNG 6.1.1 as 6.8 is not much stable. > > Some other products like AS also use @Factory with @BeforeTest and > @AfterTest annotations with 6.1.1. Need to figure out what is really > happening here. > > Thanks, > Krishantha. > > >> In that case, what would be the way to achieve the expected behavior ? >> >> [1] http://testng.org/doc/documentation-main.html#annotations >> [2] http://osdir.com/ml/java-testng-user/2011-07/msg00166.html >> >> Thanks, >> Malithi. >> -- >> >> *Malithi Edirisinghe* >> Senior Software Engineer >> WSO2 Inc. >> >> Mobile : +94 (0) 718176807 >> malit...@wso2.com >> > > > > -- > Krishantha Samaraweera > Senior Technical Lead - Test Automation > Mobile: +94 77 7759918 > WSO2, Inc.; http://wso2.com/ > lean . enterprise . middlewear. > > _______________________________________________ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > >
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev