launch abbot scripts on a server when commit

  • Pascal Lachance

    Pascal Lachance - 2009-09-16


    I want to know if it is possible to automatically launch abbot scripts on a server when someone in my team commit some code? If it is possible how can i do this?


  • Nikhil K R

    Nikhil K R - 2011-12-21

    Assume you have prepared the script (ie: xml file) using Abbot. Follow the 3 steps to run it automatically.

    1. Create a class like below for initiating your test.

    package sample.test;
    import junit.extensions.abbot.ScriptTestSuite;
    import junit.framework.Test;
    import junit.framework.TestCase;
    import junit.textui.TestRunner;
    import abbot.Log;
    import abbot.finder.AWTHierarchy;
    import abbot.finder.Hierarchy;
    import abbot.finder.TestHierarchy;
    import abbot.script.Script;
    import abbot.script.StepRunner;
    import abbot.util.AWTFixtureHelper;
    public class AbbotStarter extends ScriptFixture
        static String ABBOT_SCRIPT_HOME ;
        public AbbotStarter(String name)
        public static Test suite()
            return new ScriptTestSuite(AbbotStarter.class, ABBOT_SCRIPT_HOME);
        public static void main(String[] args)
                System.out.println("Usage : sample.test.AbbotStarter <Abbot-Script-home>");
                    ABBOT_SCRIPT_HOME = args[0];
            new File(burbLog).delete();
    class ScriptFixture extends TestCase
        private static AWTFixtureHelper oldContext = null;
        private static final Hierarchy DUMMY_HIERARCHY = new AWTHierarchy();
        private StepRunner runner;
         * Construct a test case with the given name, which <i>must</i> be the
         * filename of the script to run.
        public ScriptFixture(String filename)
            // It is essential that the name be passed to super() unmodified, or
            // the JUnit GUI will consider it a different test.
         * Saves the current UI state for restoration when the fixture (if any) is
         * terminated. Also sets up a {@link TestHierarchy} for the duration of the
         * test.
        protected void setUp() throws Exception
            if (oldContext == null)
                oldContext = new AWTFixtureHelper();
            runner = new StepRunner(oldContext);
            // Support for deprecated ComponentTester.assertFrameShowing usage
            // only. Eventually this will go away.
        protected void tearDown() throws Exception
            runner = null;
         * Override the default TestCase runTest method to invoke the script. The
         * {@link Script} is created and a default {@link StepRunner} is used to run
         * it.
         * @see junit.framework.TestCase#runTest
        protected void runTest() throws Throwable
                Script script = new Script(getName(), DUMMY_HIERARCHY);
            Log.log("Running " + script + " with " + getClass());
                Log.log(script.toString() + " finished");

    2. Invoke the above class from a batch file, abbot.bat

    @echo off
    title Abbot Runner
    set CP=-classpath 
    set CP=%CP%./lib/abbot.jar;
    set CP=%CP%./lib/burpsuite_v1.4.01.jar;
    set CP=%CP%./lib/costello.jar;
    set CP=%CP%./lib/commons-logging-1.1.1.jar;
    set CP=%CP%./lib/jdom-1.1.1.jar;
    set CP=%CP%./lib/junit-4.8.2.jar;
    set CP=%CP%./AbbotTestRunner.jar
    java %CP% sample.test.AbbotStarter

    3. Run your application as  "abbot.bat my_automation.xml"


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks