Class ConstraintGeneratingSequentialCombinatorialTestManager
- java.lang.Object
-
- de.rwth.swc.coffee4j.algorithmic.sequential.manager.ConstraintGeneratingSequentialCombinatorialTestManager
-
- All Implemented Interfaces:
GeneratingSequentialCombinatorialTestManager,SequentialCombinatorialTestManager
public class ConstraintGeneratingSequentialCombinatorialTestManager extends Object implements GeneratingSequentialCombinatorialTestManager
Default implementation of the interfaceGeneratingSequentialCombinatorialTestManager.
-
-
Constructor Summary
Constructors Constructor Description ConstraintGeneratingSequentialCombinatorialTestManager(SequentialCombinatorialTestConfiguration configuration, CompleteTestModel testModel)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<int[]>generateAdditionalTestInputsWithResult(int[] testInput, TestResult testResult)Generates additional test inputs based on results of previous test inputs normally generated by eitherSequentialCombinatorialTestManager.generateInitialTests()or this method in a previous iteration.List<int[]>generateInitialTests()Generates all initial test inputs for execution.Optional<int[]>generateNextTestInputForClassification(int[] testInput, TestResult testResult)Set<it.unimi.dsi.fastutil.ints.IntList>getMinimalExceptionInducingTuples()Optional<int[]>initializeClassification(Map<int[],TestResult> errorConstraintExceptionCausingTestInputs)
-
-
-
Constructor Detail
-
ConstraintGeneratingSequentialCombinatorialTestManager
public ConstraintGeneratingSequentialCombinatorialTestManager(SequentialCombinatorialTestConfiguration configuration, CompleteTestModel testModel)
- Parameters:
configuration-SequentialCombinatorialTestConfigurationused for the initialization of FCAs etc.testModel- model to process.
-
-
Method Detail
-
generateInitialTests
public List<int[]> generateInitialTests()
Description copied from interface:SequentialCombinatorialTestManagerGenerates all initial test inputs for execution. This should generate at least one test input if dynamic generation viaSequentialCombinatorialTestManager.generateAdditionalTestInputsWithResult(int[], TestResult)should be used, as most front-ends won't callSequentialCombinatorialTestManager.generateAdditionalTestInputsWithResult(int[], TestResult)if this returned no test input.- Specified by:
generateInitialTestsin interfaceSequentialCombinatorialTestManager- Returns:
- a list of all initial test inputs. It is not guaranteed that these test inputs don't contain duplicates
-
generateAdditionalTestInputsWithResult
public List<int[]> generateAdditionalTestInputsWithResult(int[] testInput, TestResult testResult)
Description copied from interface:SequentialCombinatorialTestManagerGenerates additional test inputs based on results of previous test inputs normally generated by eitherSequentialCombinatorialTestManager.generateInitialTests()or this method in a previous iteration. For example, this functionality can be used to implement dynamic test input generation or fault characterization (or a combination of both).- Specified by:
generateAdditionalTestInputsWithResultin interfaceSequentialCombinatorialTestManager- Parameters:
testInput- the test input for which's result further test inputs should be generatedtestResult- the result of the test input- Returns:
- a list of additional test inputs generated based on the result of the given test inputs. This does not necessarily have to return any test inputs for each call
-
initializeClassification
public Optional<int[]> initializeClassification(Map<int[],TestResult> errorConstraintExceptionCausingTestInputs)
- Specified by:
initializeClassificationin interfaceGeneratingSequentialCombinatorialTestManager- Parameters:
errorConstraintExceptionCausingTestInputs- all test inputs that triggered anErrorConstraintExceptionduring testing.- Returns:
- next test input to execute or an empty Optional if no further tests are needed for classification.
-
generateNextTestInputForClassification
public Optional<int[]> generateNextTestInputForClassification(int[] testInput, TestResult testResult)
- Specified by:
generateNextTestInputForClassificationin interfaceGeneratingSequentialCombinatorialTestManager- Parameters:
testInput- previously executed test input.testResult- result of previously executed test input.- Returns:
- next test input to execute or an empty Optional if no further tests are needed for classification.
-
getMinimalExceptionInducingTuples
public Set<it.unimi.dsi.fastutil.ints.IntList> getMinimalExceptionInducingTuples()
- Returns:
- set of minimal exception-inducing combinations.
-
-