com.projectdarkstar.tools.dtc.service
Interface LaunchService


public interface LaunchService

This interface is the central API used by clients to load test suites into the execution queue to be picked and executed by the test cluster execution daemon. It is intended to be a remote interface exposing a stateless session EJB3.0 bean.


Method Summary
 void rerunTestExecution(Long testExecutionId, String name, String tags)
           Schedule execution of a new TestExecution based on the TestExecution with the given id.
 void rerunTestExecutionAgainstNewDarkstar(Long testExecutionId, String name, String tags, PkgLibraryDTO darkstarPkg)
           Schedule execution of a new TestExecution based on the TestExecution with the given id to be run against the given darkstar application.
 void rerunTestExecutionAgainstNewServerApp(Long testExecutionId, String name, String tags, PkgLibraryDTO darkstarPkg)
           Schedule execution of a new TestExecution based on the TestExecution with the given id to be run against the given server application.
 void runTestExecution(Long testExecutionId)
           Schedule execution of the TestExecution with the given id.
 void runTestSuite(Long testSuiteId, String name, String tags)
           Schedule execution of the TestSuite with the given id.
 void runTestSuiteAgainstNewDarkstar(Long testSuiteId, String name, String tags, PkgLibraryDTO darkstarPkg)
           Schedule execution of the TestSuite with the given id to be run against the given darkstar package.
 void runTestSuiteAgainstNewServerApp(Long testSuiteId, String name, String tags, PkgLibraryDTO serverPkg)
           Schedule execution of the TestSuite with the given id to be run against the given server application package.
 

Method Detail

runTestExecution

void runTestExecution(Long testExecutionId)
                      throws DTCServiceException

Schedule execution of the TestExecution with the given id. A TestQueue object will be created as a wrapper around the given TestExecution. The execution daemon should then pick up the test from the queue and run the complete TestExecution as it is specified.

Parameters:
testExecutionId - id of the TestExecution to execute
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

runTestSuite

void runTestSuite(Long testSuiteId,
                  String name,
                  String tags)
                  throws DTCServiceException

Schedule execution of the TestSuite with the given id. This method specifically will create a TestExecution object derived from the TestSuite object with the given id and will load it into the execution queue as a TestQueue object.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Parameters:
testSuiteId - id of the TestSuite to execute
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

runTestSuiteAgainstNewDarkstar

void runTestSuiteAgainstNewDarkstar(Long testSuiteId,
                                    String name,
                                    String tags,
                                    PkgLibraryDTO darkstarPkg)
                                    throws DTCServiceException

Schedule execution of the TestSuite with the given id to be run against the given darkstar package. This method will create a TestExecution object derived from the TestSuite object with the given id. However, the PkgLibrary required for darkstar with the given TestSuite will be replaced with the darkstarPkg. A TestQueue will then be created to schedule this suite for execution.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Parameters:
testSuiteId - id of the TestSuite to execute
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
darkstarPkg - package library of the darkstar package to test
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

runTestSuiteAgainstNewServerApp

void runTestSuiteAgainstNewServerApp(Long testSuiteId,
                                     String name,
                                     String tags,
                                     PkgLibraryDTO serverPkg)
                                     throws DTCServiceException

Schedule execution of the TestSuite with the given id to be run against the given server application package. This method will create a TestExecution object derived from the TestSuite object with the given id. However, the PkgLibrary required for the serverApp in each of the TestSuite's TestSpec will be replaced by the serverPkg. A TestQueue will then be created to schedule this suite for execution.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Note that the assumption made with this method is that the TestSpec objects of the given TestSuite are all associated with the same server application. If they are not, the results may be unexpected.

Parameters:
testSuiteId - id of the TestSuite to execute
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
serverPkg - package library of the server application to test
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

rerunTestExecution

void rerunTestExecution(Long testExecutionId,
                        String name,
                        String tags)
                        throws DTCServiceException

Schedule execution of a new TestExecution based on the TestExecution with the given id. This method will create a new TestExecution which is identical to the TestExecution with the given id and schedule it to be run by creating a TestQueue object.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Note that there is a distinction between using this method and simply using the runTestSuite(java.lang.Long, java.lang.String, java.lang.String) method against the TestSuite id from the given TestExecution. The difference is that this method guarantees that the execution configuration will be completely duplicated. This is not the case when running against a TestSuite because the TestSuite may have changed.

Parameters:
testExecutionId - id of the TestExecution to rerun
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

rerunTestExecutionAgainstNewDarkstar

void rerunTestExecutionAgainstNewDarkstar(Long testExecutionId,
                                          String name,
                                          String tags,
                                          PkgLibraryDTO darkstarPkg)
                                          throws DTCServiceException

Schedule execution of a new TestExecution based on the TestExecution with the given id to be run against the given darkstar application. This method will create a new TestExecution which is identical to the TestExecution with the given id. It will then modify the darkstar package of the new TestExecution to use the new darkstar package and schedule the test to be run by creating a TestQueue object.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Parameters:
testExecutionId - id of the TestExecution to rerun
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
darkstarPkg - package library of the darkstar package to test
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException

rerunTestExecutionAgainstNewServerApp

void rerunTestExecutionAgainstNewServerApp(Long testExecutionId,
                                           String name,
                                           String tags,
                                           PkgLibraryDTO darkstarPkg)
                                           throws DTCServiceException

Schedule execution of a new TestExecution based on the TestExecution with the given id to be run against the given server application. This method will create a new TestExecution which is identical to the TestExecution with the given id. It will then modify the server application package specified for each of the tests to use to the given server package library and schedule the tests to be run by creating a TestQueue object.

The newly created TestExecution will be assigned the given name as its name attribute. It will also be associated with a set of tags represented by the comma/space separated list of given tags. For each tag in the list, either a new TestExecutionTag entity will be created, or the corresponding entity from persistent storage will be used.

Parameters:
testExecutionId - id of the TestExecution to rerun
name - name to assign to the new TestExecution
tags - comma/space separated list of tags to assign to the new TestExecution
darkstarPkg - library of the server application package to test
Throws:
com.projectdarkstar.tools.dtc.service.DTCServiceException
DTCServiceException


Copyright © 2013. All Rights Reserved.