Class DelegatingInterleavingExecutionReporter
- java.lang.Object
-
- de.rwth.swc.coffee4j.engine.report.DelegatingInterleavingExecutionReporter
-
- All Implemented Interfaces:
ExecutionReporter
,InterleavingExecutionReporter
public class DelegatingInterleavingExecutionReporter extends Object implements InterleavingExecutionReporter
Delegating Reporter for interleaving testing and generation.
-
-
Constructor Summary
Constructors Constructor Description DelegatingInterleavingExecutionReporter(Collection<InterleavingExecutionReporter> reporters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkingFinished(InterleavingCombinatorialTestGroup group, Combination failureInducingCombination, boolean isFailureInducing)
Called when the checking phase for a combination has finished.void
checkingStarted(InterleavingCombinatorialTestGroup group, Combination failureInducingCombination)
Called when the checking phase for a combination has started.ReportLevel
getReportLevel()
Specifies the level of reports this reporter wants to get.void
identificationFinished(InterleavingCombinatorialTestGroup group, Set<Combination> exceptionInducingCombinations, Set<Combination> failureInducingCombinations)
Called when the identification phase for a failing test input has finished.void
identificationStarted(InterleavingCombinatorialTestGroup group, Combination failingTestInput)
Called when the identification phase for a failing test input has started.void
identificationTestInputGenerated(InterleavingCombinatorialTestGroup group, Combination testInput)
Called when a new test input was generated during identification phase.void
interleavingGroupFinished(InterleavingCombinatorialTestGroup group, Map<Combination,Class<? extends Throwable>> exceptionInducingCombinations, Set<Combination> possibleFailureInducingCombinations)
Called when the interleaving combinatorial testing has finished.void
interleavingGroupGenerated(InterleavingCombinatorialTestGroup group)
Called when a newInterleavingCombinatorialTestGroup
has been generated by anInterleavingCombinatorialTestManager
.void
modelModified(InputParameterModel original, InputParameterModel modified)
Called if anyModelModifier
changed the model.void
report(ReportLevel level, Report report)
Called if any algorithm made a report for and event not covered by any of the life cycle callback methods.void
testInputExecutionFinished(Combination testInput, TestResult result)
Indicates the end of a test input execution.void
testInputExecutionStarted(Combination testInput)
Indicates the start of a test input execution.
-
-
-
Constructor Detail
-
DelegatingInterleavingExecutionReporter
public DelegatingInterleavingExecutionReporter(Collection<InterleavingExecutionReporter> reporters)
-
-
Method Detail
-
interleavingGroupGenerated
public void interleavingGroupGenerated(InterleavingCombinatorialTestGroup group)
Description copied from interface:InterleavingExecutionReporter
Called when a newInterleavingCombinatorialTestGroup
has been generated by anInterleavingCombinatorialTestManager
.- Specified by:
interleavingGroupGenerated
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.
-
interleavingGroupFinished
public void interleavingGroupFinished(InterleavingCombinatorialTestGroup group, Map<Combination,Class<? extends Throwable>> exceptionInducingCombinations, Set<Combination> possibleFailureInducingCombinations)
Description copied from interface:InterleavingExecutionReporter
Called when the interleaving combinatorial testing has finished.- Specified by:
interleavingGroupFinished
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.exceptionInducingCombinations
- combinations that need to be modelled as error-constraints.possibleFailureInducingCombinations
- combinations that trigger faults in the SUT.
-
identificationStarted
public void identificationStarted(InterleavingCombinatorialTestGroup group, Combination failingTestInput)
Description copied from interface:InterleavingExecutionReporter
Called when the identification phase for a failing test input has started.- Specified by:
identificationStarted
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.failingTestInput
- test input for which the failure-inducing/error-combinations should be identified.
-
identificationFinished
public void identificationFinished(InterleavingCombinatorialTestGroup group, Set<Combination> exceptionInducingCombinations, Set<Combination> failureInducingCombinations)
Description copied from interface:InterleavingExecutionReporter
Called when the identification phase for a failing test input has finished.- Specified by:
identificationFinished
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.exceptionInducingCombinations
- all found combinations that must be modeled as error-constraints.failureInducingCombinations
- all found (possibly) failure-inducing combinations causing the test input to fail.
-
identificationTestInputGenerated
public void identificationTestInputGenerated(InterleavingCombinatorialTestGroup group, Combination testInput)
Description copied from interface:InterleavingExecutionReporter
Called when a new test input was generated during identification phase.- Specified by:
identificationTestInputGenerated
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.testInput
- the newly generated test input.
-
checkingStarted
public void checkingStarted(InterleavingCombinatorialTestGroup group, Combination failureInducingCombination)
Description copied from interface:InterleavingExecutionReporter
Called when the checking phase for a combination has started.- Specified by:
checkingStarted
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.failureInducingCombination
- the combination to be checked.
-
checkingFinished
public void checkingFinished(InterleavingCombinatorialTestGroup group, Combination failureInducingCombination, boolean isFailureInducing)
Description copied from interface:InterleavingExecutionReporter
Called when the checking phase for a combination has finished.- Specified by:
checkingFinished
in interfaceInterleavingExecutionReporter
- Parameters:
group
- stores all important information for the execution of interleaving combinatorial testing.failureInducingCombination
- the combination that has been checked.isFailureInducing
- true iff combination is (most-likely) an error-combination/failure-inducing combination.
-
testInputExecutionStarted
public void testInputExecutionStarted(Combination testInput)
Description copied from interface:ExecutionReporter
Indicates the start of a test input execution.- Specified by:
testInputExecutionStarted
in interfaceExecutionReporter
- Parameters:
testInput
- the started test input
-
testInputExecutionFinished
public void testInputExecutionFinished(Combination testInput, TestResult result)
Description copied from interface:ExecutionReporter
Indicates the end of a test input execution.- Specified by:
testInputExecutionFinished
in interfaceExecutionReporter
- Parameters:
testInput
- the finished test inputresult
- the result of the test input
-
getReportLevel
public ReportLevel getReportLevel()
Description copied from interface:ExecutionReporter
Specifies the level of reports this reporter wants to get. Only reports with an equal of higherReportLevel
will be passed toExecutionReporter.report(ReportLevel, Report)
.- Specified by:
getReportLevel
in interfaceExecutionReporter
- Returns:
- the desired level of reports. The default method returns trace
-
report
public void report(ReportLevel level, Report report)
Description copied from interface:ExecutionReporter
Called if any algorithm made a report for and event not covered by any of the life cycle callback methods.- Specified by:
report
in interfaceExecutionReporter
- Parameters:
level
- the level of the report. Always higher than or equal toExecutionReporter.getReportLevel()
report
- the actual report with resolved arguments
-
modelModified
public void modelModified(InputParameterModel original, InputParameterModel modified)
Description copied from interface:ExecutionReporter
Called if anyModelModifier
changed the model.- Specified by:
modelModified
in interfaceExecutionReporter
- Parameters:
original
- the model before modificationmodified
- the model after modification. May benull
if theModelModifier
returnednull
-
-