Examples of GraphListener


Examples of nz.ac.waikato.modeljunit.GraphListener

   * @param tester
   * @return average number of test steps required to cover all transitions.
   */
  public static double allTransitions(Tester tester)
  {
    GraphListener graph = tester.buildGraph(100000);
    //tester.addListener(new VerboseListener()); //if you want to see the tests
    CoverageMetric trans = tester.addCoverageMetric(new TransitionCoverage());
    int total = 0;
    tester.setRandom(new Random(Tester.FIXEDSEED));
    for (int run=0; run<RUNS; run++) {
      int steps = 0;
      trans.clear();
      graph.clearDoneTodo();
      tester.reset();
      while (trans.getPercentage() < 100.0) {     
        tester.generate();
        steps++;
      }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

    TimedModel model = new TimedModel(new SimpleTimedLight());
    Tester tester = new RandomTester(model);
    //tester.addListener(new VerboseListener());
    double origProb = model.getTimeoutProbability();
    model.setTimeoutProbability(0.3); // while exploring the FSM
    GraphListener graph = tester.buildGraph();
    model.setTimeoutProbability(origProb);
    graph.printGraphDot("SimpleTimedLight.dot");
    System.out.println("FSM has " + graph.getGraph().numVertices() + " states and "
        + graph.getGraph().numEdges() + " transitions");
    CoverageMetric metric = tester.addCoverageMetric(new TransitionCoverage());
    for (double prob = 0.1; prob < 0.99; prob += 0.1) {
      model.setTimeoutProbability(prob);
      double totalSteps = 0.0;
      int totalTime = 0; // sum of all the totalTimes.
      for (int seed = 0; seed < experiments; seed++) {
        int testSeqTime = 0;
        int lastTime = 0; // the time after the last transition
        metric.clear();
        tester.reset();
        tester.setRandom(new Random(seed));
        int count = 0;
        while (metric.getPercentage() < 100.0) {
          tester.generate(1);
          if (model.getTime() > lastTime) {
            lastTime = model.getTime();
          } else {
            testSeqTime += lastTime;
            //System.out.println("added " + lastTime + " secs");
            lastTime = 0;
          }
          count++;
        }
        testSeqTime += lastTime;
        //System.out.println("finally added " + lastTime + " secs");
        totalSteps += count;
        totalTime += testSeqTime;
        //System.out.println("Seed=" + seed + " steps=" + count + " time=" + testSeqTime);
      }
      System.out.println(String.format("%.2f", prob) + "," + totalSteps / experiments
          + "," + (double) totalTime / experiments);
    }
    System.out.println("FSM has " + graph.getGraph().numVertices() + " states and "
        + graph.getGraph().numEdges() + " transitions");
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

  {
    Tester tester = new GreedyTester(new AlarmClockOld());
    System.out.println("------------------------");
    tester.setRandom(new Random());
    tester.generate(100);
    GraphListener listener = tester.buildGraph();
    try {
      listener.printGraphDot("OriginalAlarmClock.dot");
    }
    catch (FileNotFoundException e) {
      e.printStackTrace();
    }
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

  public static void main(String[] args) throws FileNotFoundException
  {
    Tester tester = new RandomTester(new ECinema());
    // The guards make this a more difficult graph to explore, but we can
    // increase the default maximum search to complete the exploration.
    GraphListener graph = tester.buildGraph(100000);
    graph.printGraphDot("ecinema.dot");
    CoverageMetric trans = tester.addCoverageMetric(new TransitionCoverage());
    CoverageMetric trpairs = tester.addCoverageMetric(new TransitionPairCoverage());
    CoverageMetric states = tester.addCoverageMetric(new StateCoverage());
    CoverageMetric actions = tester.addCoverageMetric(new ActionCoverage());
    tester.addListener("verbose");
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

      if (line == null)
        break;
      if (line.equals("graph")) {
        quidonc.out.println("Building FSM graph...");
        Tester tester = new GreedyTester(quidonc);
        GraphListener graph = tester.buildGraph();
        graph.printGraphDot("QuiDonc.dot");
        quidonc.out.println("Printed FSM graph to QuiDonc.dot.");
        quidonc.out.println("Use dotty or dot from http://www.graphviz.org"
            + " to view/transform the graph.");
      }
      else if (line.equals("dial")) {
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

  {
    System.out.println("Exploring the SimCard model without testing the SUT.");
    RandomTester tester = new GreedyTester(new SimCard(null));
    // use very long test sequences (since reset corresponds to a new card).
    tester.setResetProbability(0.0001);
    GraphListener graph = tester.buildGraph(1000000);
    graph.printGraphDot("gsm.dot");
    System.out.println("Graph contains "
        + graph.getGraph().numVertices() + " states and "
        + graph.getGraph().numEdges() + " transitions.");
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

  public static void main(String[] args)
  {
    Tester tester = new GreedyTester(new AlarmClock());
    tester.setRandom(new Random());
    tester.generate(100);
    GraphListener listener = tester.buildGraph();
    try {
      listener.printGraphDot("AlarmClock.dot");
    }
    catch (FileNotFoundException e) {
      e.printStackTrace();
    }
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

    final int experiments = 100;
    SimpleNaiveLight fsm = new SimpleNaiveLight();
    Tester tester = new RandomTester(fsm);
    //tester.addListener(new VerboseListener());
    //tester.addListener(new VerboseListener());
    GraphListener graph = tester.buildGraph();
    System.out.println("FSM has " + graph.getGraph().numVertices() + " states and "
        + graph.getGraph().numEdges() + " transitions");
    CoverageMetric metric = tester.addCoverageMetric(new TransitionCoverage());
    for (double prob = 0.1; prob < 0.99; prob += 0.1) {
      double totalSteps = 0.0;
      int totalTime = 0; // sum of all the totalTimes.
      for (int seed = 0; seed < experiments; seed++) {
        int testSeqTime = 0;
        int lastTime = 0; // the time after the last transition
        metric.clear();
        tester.reset();
        tester.setRandom(new Random(seed));
        int count = 0;
        while (metric.getPercentage() < 100.0) {
          tester.generate(1);
          if (fsm.time > lastTime) {
            lastTime = fsm.time;
          } else {
            testSeqTime += lastTime;
            //System.out.println("added " + lastTime + " secs");
            lastTime = 0;
          }
          count++;
        }
        testSeqTime += lastTime;
        //System.out.println("finally added " + lastTime + " secs");
        totalSteps += count;
        totalTime += testSeqTime;
        //System.out.println("Seed=" + seed + " steps=" + count + " time=" + testSeqTime);
      }
      System.out.println(String.format("%.2f", prob) + "," + totalSteps / experiments
          + "," + (double) totalTime / experiments);
    }
    System.out.println("FSM has " + graph.getGraph().numVertices() + " states and "
        + graph.getGraph().numEdges() + " transitions");
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

  public static void main(String[] args)
  {
    Tester tester = new GreedyTester(new TrafficLightOld());
    tester.addListener("verbose");
    GraphListener graphListener = tester.buildGraph();
    try {
      graphListener.printGraphDot("OriginalTrafficLight.dot");
    }
    catch (Exception ex) {
      System.out.println(ex.getMessage());
    }
  }
View Full Code Here

Examples of nz.ac.waikato.modeljunit.GraphListener

        mTestDesign.initializeTester(0);
        //reset the visualisation panel
        mVisualisation.resetRunTimeInformation();
        //Try to fully explore the complete graph before running the test explorations
        Tester tester = TestExeModel.getTester(0);
        GraphListener graph = tester.buildGraph();
        mVisualisation.showEmptyExploredGraph(graph);

        // Clear the information in Result viewer text area
        mResultViewer.resetRunTimeInformation();
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.