// Copyright (C) 2003-2009 by Object Mentor, Inc. All rights reserved. // Released under the terms of the CPL Common Public License version 1.0. package fitnesse.testsystems; public interface TestSystem { /** * Get the test system name identifier, as it was provided by the user. * @return returns the test system name identifier */ String getName(); /** * Start the test system. */ void start() throws UnableToStartException; /** * Close the test system. This is typically performed from the test execution thread. */ void bye() throws UnableToStopException; /** * Kill the test system. This is typically invoked asynchronously. */ void kill(); /** * Run a collection of tests. * @param pageToTest TestPage to run */ void runTests(TestPage pageToTest) throws TestExecutionException; /** * System is up and running. * @return returns boolean */ boolean isSuccessfullyStarted(); /** * Add a listener for test system events. During test execution the listeners will be kept * informed about the status of the test execution. * @param listener TestSystemListener */ void addTestSystemListener(TestSystemListener listener); }