Class OnlineTestSupport
- Object
-
- OnlineTestSupport
-
public abstract class OnlineTestSupport extends Object
JUnit 4 test support for test cases that require an "online" resource, such as an external server or database.See
OnlineTestCasefor details of behaviour and test fixture configuration.Subclass names should end with "OnlineTest" to allow Maven to treat them specially.
This class contains an adapter to
OnlineTestCasethat allows its use with JUnit 4. Delegation is used to recycle the behaviour ofOnlineTestCasewithout extendingTestCase. This is necessary becauseTestRunners appear to give priority to JUnit 3 behaviour, ignoring JUnit 4 annotations in suites that extendTestCase.- Author:
- Ben Caradoc-Davies, CSIRO Earth Science and Resource Engineering
- See Also:
OnlineTestCase
-
-
Constructor Summary
Constructors Constructor Description OnlineTestSupport()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidafter()voidbefore()protected voidconnect()Override this method to connect to an online resource.protected PropertiescreateExampleFixture()Allows test to create a sample fixture for users.protected PropertiescreateOfflineFixture()Allows tests to create an offline fixture in cases where the user has not specified an explicit fixture for the test.protected voiddisconnect()Override this method to disconnect from an online resource.protected PropertiesgetFixture()Return properties configured in the fixture.protected abstract StringgetFixtureId()Subclasses must override this method to return a fixture id.protected booleanisOnline()Override this method to return false if you can detect that an online resource required for this test is not available,protected voidsetUpInternal()Method for subclasses to latch onto the setup phase.protected voidtearDownInternal()Method for subclasses to latch onto the teardown phase.
-
-
-
Method Detail
-
getFixtureId
protected abstract String getFixtureId()
Subclasses must override this method to return a fixture id.- Returns:
- fixture id
- See Also:
OnlineTestCase.getFixtureId()
-
connect
protected void connect() throws ExceptionOverride this method to connect to an online resource. Throw an exception on failure.Subclasses do not have to override this method, but doing so allows builders to choose to have this test disable itself when the online resource is not available.
- Throws:
Exception- See Also:
OnlineTestCase.connect()
-
disconnect
protected void disconnect() throws ExceptionOverride this method to disconnect from an online resource. Throw an exception on failure.- Throws:
Exception- See Also:
OnlineTestCase.disconnect()
-
isOnline
protected boolean isOnline() throws ExceptionOverride this method to return false if you can detect that an online resource required for this test is not available,- Returns:
- false if a required resource is not online
- Throws:
Exception- See Also:
OnlineTestCase.isOnline()
-
setUpInternal
protected void setUpInternal() throws ExceptionMethod for subclasses to latch onto the setup phase.- Throws:
Exception- See Also:
OnlineTestCase.setUpInternal()
-
tearDownInternal
protected void tearDownInternal() throws ExceptionMethod for subclasses to latch onto the teardown phase.- Throws:
Exception- See Also:
OnlineTestCase.tearDownInternal()
-
createOfflineFixture
protected Properties createOfflineFixture()
Allows tests to create an offline fixture in cases where the user has not specified an explicit fixture for the test.Note, that this should method should on be implemented if the test case is created of creating a fixture which relies solely on embedded or offline resources. It should not reference any external or online resources as it prevents the user from running offline.
- See Also:
OnlineTestCase.createOfflineFixture()
-
createExampleFixture
protected Properties createExampleFixture()
Allows test to create a sample fixture for users.If this method returns a value the first time a fixture is looked up and not found this method will be called to create a fixture file with the same id, but suffixed with .template.
- See Also:
OnlineTestCase.createExampleFixture()
-
getFixture
protected Properties getFixture()
Return properties configured in the fixture.This method allows subclasses in other packages to access fixture properties.
- Returns:
- properties configured in the fixture.
-
-