blob: 77e9457be1c7f69d5d5e25621b45b33dbf34cff0 [file] [log] [blame]
09.08.2011
Bugzilla ticket: 350389, improve Scout RT testing support
BSI ticket: 103'068
Replaced ServerSessionClass and PrincipalName annotations by a more powerful ServerTest annotation that has the following features:
o annotation can be applied on class-level as well as on a test case level (method).
o @BeforeClass and @AfterClass methods are executed in the same session defined on class-level
o @Before, @Test and @After are executed per test method in the same session defined on class-level
or in a separate session if the @Test method is also annotated with @ServerTest
o Tests can be executed as different users. Controlled by @ServerTest(runAs = "principal")
o The IServerSession class can be provided by the @ServerTest(serverSessionClass = MyServerSession.class) annotation
or by setting the default value ScoutServerTestRunner.setDefaultServerSessionClass(MyServerSession.class). The value
provided by the @ServerTest annotation is used if both are provided.
o An existing or new IServerSession is provided by an implementation of IServerSessionProvider. The default provider is
DefaultTestServerSessionProvider and is set on ScoutServerTestRunner.setDefaultServerSessionProvider(). It can be
overridden using the @ServerTest(serverSessionProvider = MyServerSessionProvider.class) annotation.
Migration:
o remove all @ServerSessionClass annotations
o remove all @PrincipalName annotations
o set the project's server session class in the server test application
ScoutServerTestRunner.setDefaultServerSessionClass(ServerSession.class);
ScoutServerTestRunner.setDefaultPrincipalName("defaultPrincipal");