@SuppressWarnings("unchecked") @Override public boolean localSearch(LocalSearchObjective<? extends Chromosome> objective) { TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); return localSearch.doSearch(this, (LocalSearchObjective<TestSuiteChromosome>) objective); }
/** * Decides the kind of local search that will be applied to the Test Suite. * * @return a <code>TestSuiteLocalSearch</code> instance to use for local * search */ public static TestSuiteLocalSearch selectTestSuiteLocalSearch() { return new TestSuiteLocalSearch(); }
localSearchType = chooseLocalSearchSuiteType(); updateFitness(suite, objective.getFitnessFunctions()); improved = applyDSE(suite, lastIndex, clonedTest, objective); } else { improved = applyAVM(suite, lastIndex, clonedTest, objective); updateFitness(suite, objective.getFitnessFunctions()); } else {
public boolean doSearch(TestSuiteChromosome suite, LocalSearchObjective<TestSuiteChromosome> objective) { updateFitness(suite, objective.getFitnessFunctions()); double fitnessBefore = suite.getFitness(); ensureDoubleExecution(suite, objective); restoreBranchCoverage(suite, (TestSuiteFitnessFunction) objective.getFitnessFunctions().get(0)); expandTestSuite(suite, objective); applyLocalSearch(suite, objective); boolean hasImproved = hasImproved(fitnessBefore, suite, objective); if (!hasImproved) {
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
TestCase expandedTest = expandTestCase(newTest); TestChromosome expandedTestChromosome = newTestSuite.addTest(expandedTest); expandedTestChromosome.setLocalSearchApplied(hasLocalSearchBeenApplied);
localSearchObjective.addFitnessFunction(branchCoverageSuiteFitness); TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); boolean improved; do { improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
private void runArrayExample(int length, double expectedFitness) throws ClassNotFoundException, ConstructionFailedException, NoSuchMethodException, SecurityException { TestCase test = getArrayTest(length); System.out.println("Test: "+test.toCode()); TestSuiteChromosome suite = new TestSuiteChromosome(); BranchCoverageSuiteFitness fitness = new BranchCoverageSuiteFitness(); BranchCoverageMap.getInstance().searchStarted(null); assertEquals(4.0, fitness.getFitness(suite), 0.1F); suite.addTest(test); //assertEquals(1.0, fitness.getFitness(suite), 0.1F); TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite); assertEquals(expectedFitness, fitness.getFitness(suite), 0.1F); BranchCoverageMap.getInstance().searchFinished(null); }
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
private void runIntExample(int x, int y) throws ClassNotFoundException, ConstructionFailedException, NoSuchMethodException, SecurityException { TestCase test = getIntTest(x, y); TestSuiteChromosome suite = new TestSuiteChromosome(); BranchCoverageSuiteFitness fitness = new BranchCoverageSuiteFitness(); BranchCoverageMap.getInstance().searchStarted(null); assertEquals(4.0, fitness.getFitness(suite), 0.1F); suite.addTest(test); assertEquals(1.0, fitness.getFitness(suite), 0.1F); TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite); assertEquals(0.0, fitness.getFitness(suite), 0.1F); BranchCoverageMap.getInstance().searchFinished(null); }
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
private void runFloatExample(float x, float y) throws ClassNotFoundException, ConstructionFailedException, NoSuchMethodException, SecurityException { TestCase test = getFloatTest(x, y); TestSuiteChromosome suite = new TestSuiteChromosome(); BranchCoverageSuiteFitness fitness = new BranchCoverageSuiteFitness(); BranchCoverageMap.getInstance().searchStarted(null); assertEquals(4.0, fitness.getFitness(suite), 0.1F); suite.addTest(test); assertEquals(1.0, fitness.getFitness(suite), 0.1F); TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite); assertEquals(0.0, fitness.getFitness(suite), 0.1F); BranchCoverageMap.getInstance().searchFinished(null); }
localSearchObjective.addFitnessFunction(branchCoverageSuiteFitness); TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
private void runDoubleExample(double x, double y) throws ClassNotFoundException, ConstructionFailedException, NoSuchMethodException, SecurityException { TestCase test = getDoubleTest(x, y); TestSuiteChromosome suite = new TestSuiteChromosome(); BranchCoverageSuiteFitness fitness = new BranchCoverageSuiteFitness(); BranchCoverageMap.getInstance().searchStarted(null); assertEquals(4.0, fitness.getFitness(suite), 0.1F); suite.addTest(test); assertEquals(1.0, fitness.getFitness(suite), 0.1F); TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite); assertEquals(0.0, fitness.getFitness(suite), 0.1F); BranchCoverageMap.getInstance().searchFinished(null); }
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite);
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);
TestSuiteLocalSearch localSearch = TestSuiteLocalSearch.selectTestSuiteLocalSearch(); LocalSearchObjective<TestSuiteChromosome> localObjective = new DefaultLocalSearchObjective<TestSuiteChromosome>(); localObjective.addFitnessFunction(fitness); localSearch.doSearch(suite, localObjective); System.out.println("Fitness: "+fitness.getFitness(suite)); System.out.println("Test suite: "+suite);
TestSuiteLocalSearch localSearch = new TestSuiteLocalSearch(); improved = localSearch.doSearch(suite, localSearchObjective); } while (improved);