Class IsolatingClassificationStrategy
- java.lang.Object
-
- de.rwth.swc.coffee4j.algorithmic.classification.IsolatingClassificationStrategy
-
- All Implemented Interfaces:
ClassificationStrategy
public class IsolatingClassificationStrategy extends Object implements ClassificationStrategy
ClassificationStrategythat tries to find an isolating test input for each found exception-inducing combination, i.e. a test input containing no other found exception-inducing combination.
-
-
Constructor Summary
Constructors Constructor Description IsolatingClassificationStrategy(ClassificationConfiguration configuration)Constructor using aClassificationConfiguration
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Optional<int[]>generateNextTestInputForClassification(int[] testInput, TestResult result)Map<int[],Class<? extends Throwable>>getClassifiedExceptionInducingCombinations()static ClassificationStrategyFactoryisolatingClassificationStrategy()Optional<int[]>startClassification(Map<int[],Throwable> errorConstraintExceptionCausingTestInputs, List<int[]> exceptionInducingCombinationsToClassify, Set<int[]> possiblyFailureInducingCombinations)initializes the strategy.
-
-
-
Constructor Detail
-
IsolatingClassificationStrategy
public IsolatingClassificationStrategy(ClassificationConfiguration configuration)
Constructor using aClassificationConfiguration- Parameters:
configuration- provided configuration.
-
-
Method Detail
-
isolatingClassificationStrategy
public static ClassificationStrategyFactory isolatingClassificationStrategy()
- Returns:
- factory for creating an
IsolatingClassificationStrategy.
-
startClassification
public Optional<int[]> startClassification(Map<int[],Throwable> errorConstraintExceptionCausingTestInputs, List<int[]> exceptionInducingCombinationsToClassify, Set<int[]> possiblyFailureInducingCombinations)
Description copied from interface:ClassificationStrategyinitializes the strategy.- Specified by:
startClassificationin interfaceClassificationStrategy- Parameters:
errorConstraintExceptionCausingTestInputs- all test inputs that result in anErrorConstraintExceptionexceptionInducingCombinationsToClassify- all exception-inducing combinations that are found during generationpossiblyFailureInducingCombinations- all possibly failure-inducing combinations that are found during generation- Returns:
- all classified exception-inducing combinations. If a combination cannot be classified, it is classified
as
ErrorConstraintException.
-
generateNextTestInputForClassification
public Optional<int[]> generateNextTestInputForClassification(int[] testInput, TestResult result)
- Specified by:
generateNextTestInputForClassificationin interfaceClassificationStrategy- Parameters:
testInput- last executed test inputresult- result of last executed test input- Returns:
- next test input to execute that is needed for classification
-
getClassifiedExceptionInducingCombinations
public Map<int[],Class<? extends Throwable>> getClassifiedExceptionInducingCombinations()
- Specified by:
getClassifiedExceptionInducingCombinationsin interfaceClassificationStrategy- Returns:
- returns all classified exception-inducing combinations.
ErrorConstraintExceptionindicates that no classification is possible for the related combination
-
-