svn commit: r886301 - in /ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml: SeleniumIDEConverter.java SeleniumXml.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r886301 - in /ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml: SeleniumIDEConverter.java SeleniumXml.java

jleroux@apache.org
Author: jleroux
Date: Wed Dec  2 21:04:54 2009
New Revision: 886301

URL: http://svn.apache.org/viewvc?rev=886301&view=rev
Log:
A patch from Erwan de FERRIERES "Cleaning of the seleniumXml.java and seleniumIDEconverter.java files" (https://issues.apache.org/jira/browse/OFBIZ-3286) - OFBIZ-3286
This patch do not modify the files, but is just for cleaning this files :
seleniumXml.java
seleniumIDEconverter.java

There is a lot of LOC commented in the code, a lot of whitespaces and so on. This patch removes all of this.

Modified:
    ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumIDEConverter.java
    ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumXml.java

Modified: ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumIDEConverter.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumIDEConverter.java?rev=886301&r1=886300&r2=886301&view=diff
==============================================================================
--- ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumIDEConverter.java (original)
+++ ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumIDEConverter.java Wed Dec  2 21:04:54 2009
@@ -42,139 +42,36 @@
 
     private Document ideFile;
     private Element xmlDestRoot;
-
-    private    Namespace ns = Namespace.getNamespace("http://www.w3.org/1999/xhtml");
+    private Namespace ns = Namespace.getNamespace("http://www.w3.org/1999/xhtml");
     private Map root;
     
     public void convert(String ideFile, String xmlFile) throws JDOMException, IOException, SAXException, ParserConfigurationException {
-    
         readInputFile(ideFile);
-    
         convertIDECommands();
-        
         createSeleniumXml(xmlFile);
     }
 
-
     private void readInputFile(String input) throws JDOMException, IOException, SAXException, ParserConfigurationException {
-        
         File xmlFile = new File(input);
         SAXBuilder builder = new SAXBuilder();
         this.ideFile = builder.build(xmlFile);    
-        
-        //this.root = new HashMap();
-        //this.root.put("doc", freemarker.ext.dom.NodeModel.parse(xmlFile));
-    }
-
-    
-/*    private void convertIDECommands() throws JDOMException {
-        
-        //XPath path = XPath.newInstance("html/body/table/tbody");
-        Element root = this.ideFile.getRootElement();
-
-        this.xmlDestRoot = new Element("testcase");
-    
-        //TODO: there must be a better way to do this with JDom
-        Element e1 = root.getChild("body",ns);
-        Element e2 = e1.getChild("table",ns);
-        Element e3 = e2.getChild("tbody",ns);
-        List<Element> list = e3.getChildren("tr", ns);
-        List<Element> commands = root.getChild("body",ns).getChild("table",ns).getChild("tbody",ns).getChildren("tr", ns);
-        for(Element elem: commands) {
-            processIDECommand(elem);
-        }
-
-    }
-*/    
-/*    private void processIDECommand(Element elem) throws JDOMException {
-
-        
-        List<Element> cmd = elem.getChildren("td", ns);
-        Element cmdElem = cmd.get(0);
-    
-        String cmdToCompare = cmdElem.getValue();
-        System.out.println("Checking for cmd: " + cmdToCompare);
-        if("clickAndWait".compareTo(cmdElem.getValue()) == 0 ) {
-            System.out.println("Found clickAndWait");
-            this.xmlDestRoot.addContent( buildCommand("click", "locator", cmd.get(1).getValue(), null, null) );
-            this.xmlDestRoot.addContent( buildCommand("waitForPageToLoad", "value", "10000", null, null) );
-            
-        } else if("type".compareTo( cmdElem.getValue()) == 0  ) {
-            System.out.println("Found type");
-            this.xmlDestRoot.addContent ( buildCommand("type", "name", cmd.get(1).getValue(), "value", cmd.get(2).getValue()) );
-            
-        } else if("select".compareTo(cmdElem.getValue()) == 0 ) {
-            System.out.println("Found select");
-            this.xmlDestRoot.addContent( buildCommand("select", "locator", cmd.get(1).getValue(), "option", cmd.get(2).getValue()) );
-            
-        } else if("open".compareTo(cmdElem.getValue()) == 0 ) {
-            System.out.println("Found open");
-            this.xmlDestRoot.addContent( buildCommand("open", "value", cmd.get(1).getValue(), null, null) );
-            
-        } else if("click".compareTo(cmdElem.getValue()) == 0 ) {
-            Element newCmd = new Element("click");
-            newCmd.setAttribute("locator", cmd.get(1).getValue());
-            this.xmlDestRoot.addContent(newCmd);
-            
-        } else if("doubleClick".compareTo(cmdElem.getValue()) == 0 ) {
-            Element newCmd = new Element("doubleClick");
-            newCmd.setAttribute("locator", cmd.get(1).getValue());
-            this.xmlDestRoot.addContent(newCmd);
-            
-        } else {
-            System.out.println("WARNING: No definition for " + cmdElem.getValue());
-        }
-        
     }
-*/    
 
     private void createSeleniumXml(String outputFile) {
-        
         try {
-              FileOutputStream out = new FileOutputStream(outputFile);
-              XMLOutputter serializer = new XMLOutputter( Format.getPrettyFormat());
-              serializer.output(this.xmlDestRoot, out);
-              out.flush();
-              out.close();
+            FileOutputStream out = new FileOutputStream(outputFile);
+            XMLOutputter serializer = new XMLOutputter( Format.getPrettyFormat());
+            serializer.output(this.xmlDestRoot, out);
+            out.flush();
+            out.close();
         } catch (IOException e) {
-              System.err.println(e);
-        }
-    }
-    /**
-     * @param args
-     */
-/*    public static void main(String[] args) {
-        // TODO Auto-generated method stub
-        if(args.length != 2) {
-            System.out.println("Please include the source and destination file paths.");
-        } else {
-            SeleniumIDEConverter sel = new SeleniumIDEConverter();
-            try {
-                sel.convert(args[0], args[1]);
-                
-            } catch (Exception e) {
-                // TODO Auto-generated catch block
-                e.printStackTrace();
-            }
+            System.err.println(e);
         }
     }
 
-        File xmlFile = new File(input);
-        SAXBuilder builder = new SAXBuilder();
-        this.ideFile = builder.build(xmlFile);
-
-        //this.root = new HashMap();
-        //this.root.put("doc", freemarker.ext.dom.NodeModel.parse(xmlFile));
-    }
-*/
-
     private void convertIDECommands() throws JDOMException {
-
-        //XPath path = XPath.newInstance("html/body/table/tbody");
         Element root = this.ideFile.getRootElement();
-
         this.xmlDestRoot = new Element("testcase");
-
         //TODO: there must be a better way to do this with JDom
         Element e1 = root.getChild("body",ns);
         Element e2 = e1.getChild("table",ns);
@@ -184,17 +81,14 @@
         for(Element elem: commands) {
             processIDECommand(elem);
         }
-
     }
 
     private void processIDECommand(Element elem) throws JDOMException {
-
-
         List<Element> cmd = UtilGenerics.cast(elem.getChildren("td", ns));
         Element cmdElem = cmd.get(0);
-
         String cmdToCompare = cmdElem.getValue();
         System.out.println("Checking for cmd: " + cmdToCompare);
+
         if ("clickAndWait".compareTo(cmdElem.getValue()) == 0) {
             System.out.println("Found clickAndWait");
             this.xmlDestRoot.addContent(buildCommand("click", "locator", cmd.get(1).getValue(), null, null));
@@ -225,7 +119,6 @@
         } else {
             System.out.println("WARNING: No definition for " + cmdElem.getValue() + " defaulting to us 'reflection'.");
             Element newCmd = new Element(cmdElem.getValue());
-            //List attributes = cmdElem.getAttributes();
             int size = cmd.size()-1;
             for(int i=1; i<size; i++) {
                 String paramValue = cmd.get(i).getValue();
@@ -234,11 +127,9 @@
             }
             this.xmlDestRoot.addContent(newCmd);
         }
-
     }
 
     private Element buildCommand(String name, String attrib1, String value1, String attrib2, String value2) {
-
         Element newCmd = new Element(name);
         if (attrib1 != null) {
             newCmd.setAttribute(attrib1, value1);
@@ -253,18 +144,15 @@
      * @param args
      */
     public static void main(String[] args) {
-        // TODO Auto-generated method stub
         if (args.length != 2) {
             System.out.println("Please include the source and destination file paths.");
         } else {
             SeleniumIDEConverter sel = new SeleniumIDEConverter();
             try {
                 sel.convert(args[0], args[1]);
-
             } catch (Exception e) {
-                // TODO Auto-generated catch block
                 e.printStackTrace();
             }
         }
     }
-}
\ No newline at end of file
+}

Modified: ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumXml.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumXml.java?rev=886301&r1=886300&r2=886301&view=diff
==============================================================================
--- ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumXml.java (original)
+++ ofbiz/trunk/framework/testtools/src/org/ofbiz/testtools/seleniumxml/SeleniumXml.java Wed Dec  2 21:04:54 2009
@@ -67,9 +67,7 @@
 import com.thoughtworks.selenium.DefaultSelenium;
 import com.thoughtworks.selenium.SeleniumException;
 
-
 public class SeleniumXml {
-    //public static final String PROPS_NAME = "selenium.config";
     public static String PROPS_NAME = "selenium.config";
     Logger  logger = Logger.getLogger(SeleniumXml.class.getName());
 
@@ -83,7 +81,7 @@
     private String username;
     private String password;
     private String testCaseDirectory;
-    
+
     public static void main(String[] args) throws JDOMException, IOException, TestCaseException{
         if(args.length == 0) {
             System.out.println("Please include a path for the selenium XML test file.");
@@ -104,7 +102,7 @@
                 System.err.println(" Argument : "+ args[0] );
                 System.err.println(" Full absolute path of file : "+ testFile.getAbsolutePath()  );
                 System.err.println(" Full canonical path of file : "+ testFile.getCanonicalPath() );
-                
+
                 sel.testCaseDirectory =  sel.getFileDirectory(testFile.getAbsolutePath());
                 System.err.println(" testCaseDirectory: "+ sel.testCaseDirectory );
                  sel.runTest( testFile.getAbsolutePath() );
@@ -113,7 +111,7 @@
             }
         }
     }
-  
+
     /* call run test suite from webtool selenium */
     public static String runTestSuite(HttpServletRequest request, HttpServletResponse response){
         Map parameters = UtilHttp.getParameterMap(request);
@@ -135,17 +133,16 @@
              SeleniumXml sel = new SeleniumXml();
              File testFile = new File(para.trim());
              if (testFile.exists()) {
-                 System.err.println(" Argument : "+ para.trim() );
-                 System.err.println(" Full absolute path of file : "+ testFile.getAbsolutePath()  );
-                 System.err.println(" Full canonical path of file : "+ testFile.getCanonicalPath() );
-                
-                 sel.testCaseDirectory =  sel.getFileDirectory(testFile.getAbsolutePath());
-                 System.err.println(" testCaseDirectory: "+ sel.testCaseDirectory );
-                  sel.runTest( testFile.getAbsolutePath() );
-             } else {
-                 System.err.println("Test File is not exist :"+para.trim());
-             }
-             //sel.runTest(para.trim());
+                System.err.println(" Argument : "+ para.trim() );
+                System.err.println(" Full absolute path of file : "+ testFile.getAbsolutePath()  );
+                System.err.println(" Full canonical path of file : "+ testFile.getCanonicalPath() );
+
+                sel.testCaseDirectory =  sel.getFileDirectory(testFile.getAbsolutePath());
+                System.err.println(" testCaseDirectory: "+ sel.testCaseDirectory );
+                sel.runTest( testFile.getAbsolutePath() );
+            } else {
+                System.err.println("Test File is not exist :"+para.trim());
+            }
         }catch(JDOMException jdome){
              System.out.println(jdome.getMessage());
          }catch(IOException ioe){
@@ -154,7 +151,7 @@
              return "success";
          }
     }
-    
+
     private String getFileDirectory(String filePath){
         String directory = null;
         if (filePath.indexOf(File.separatorChar) != -1   ) {
@@ -163,7 +160,7 @@
         }
         return directory;
     }
-    
+
     public SeleniumXml() throws IOException {
         this.map = FastMap.newInstance();
         if (props == null) {
@@ -176,8 +173,6 @@
     private static void initConfig() throws IOException {
         try {
             String configFile = System.getProperty(PROPS_NAME);
-            //System.out.println("Looking for " + PROPS_NAME);
-            //System.out.println("Found following config file: " + configFile);
             if (configFile == null) {
                 String errMsg = "The Java environment (-Dxxx=yyy) variable with name " + PROPS_NAME + " is not set, cannot resolve location.";
                 throw new MalformedURLException(errMsg);
@@ -192,23 +187,22 @@
             throw e;
         }
     }
-    
+
     private static void initConfig(URL url) throws IOException {
         try {
             if (url == null) {
                 String errMsg = "The Java environment (-Dxxx=yyy) variable with name " + url.toString() + " is not set, cannot resolve location.";
                 throw new MalformedURLException(errMsg);
             }
-           // BasicConfigurator.configure();
             props = UtilProperties.getProperties(url);
         } catch (IOException e) {
             e.printStackTrace();
             throw e;
         }
     }
-    
+
     /**
-     * Constructor to preset with an existing Map of parameters.  Intended to be used
+     * Constructor to preset with an existing Map of parameters.  Intended to be used
      * for nested Selenium tests.
      * @param map
      */
@@ -232,18 +226,16 @@
 
     public void runCommands() throws TestCaseException {
         Element root = this.doc.getRootElement();
-        //List<Element> nodes = UtilGenerics.cast(root.getChildren());
         List<Element> nodes = root.getChildren();
         runCommands(nodes);
     }
-    
+
     public void runCommands(List<Element> nodes) throws TestCaseException{
-        
         for(Element elem: nodes) {
             String thisName = elem.getName();
             if("type" == elem.getName()) {
                 typeCmd(elem);
-                
+
             } else if("setParam" == thisName) {
                 setParam(elem);
             } else if("clickAt" == thisName) {
@@ -327,23 +319,17 @@
             } else if("runScript" == thisName) {
                 runScript(elem);
              } else {
-                //logger.error("Unknown SeleniumXml command found:"+elem.getName());
-                //Use reflection with parameters using the naming convention param1, param2, and any return results stored
-                //in map using "out"
                 logger.info("Undefined command calling by reflection for command: " + thisName);
                 callByReflection(elem);
             }
         }
-        
     }
-    
+
     private void callByReflection(Element elem) {
-        
         String methodName = elem.getName();
-        //Support two parameters for all selenium RC calls
-        String param1 = elem.getAttributeValue("param1");  
-        String param2 = elem.getAttributeValue("param2");  
-    
+        String param1 = elem.getAttributeValue("param1");
+        String param2 = elem.getAttributeValue("param2");
+
         Class[] paramTypes = null;
         Object[] args = null;
         if( (param1 != null)  && (param2 != null) ) {
@@ -358,147 +344,139 @@
         }
 
         //Capture the output name for "get" methods
-        String out = elem.getAttributeValue("out");  
-        
+        String out = elem.getAttributeValue("out");
+
         Method m;
         try {
             m = (Method) this.sel.getClass().getDeclaredMethod(methodName, paramTypes);
             Object results = m.invoke(this.sel, args);
-            
+
             //Add output parameter to common map
             if( (out != null) && (results != null)) {
                 addParam(out, results);
             }
         } catch (Exception e) {
-            // TODO Auto-generated catch block
             logger.error("Exception occurred when Unknown SeleniumXml command found:"+elem.getName());
             e.printStackTrace();
         }
     }
-    
+
     public void waitForValue(Element elem) {
-        
+
         String locator = replaceParam(elem.getAttributeValue("locator"));
         String timeout = elem.getAttributeValue("timeout");
         String outParam = elem.getAttributeValue("out");
-        
+
         int maxTime = Integer.parseInt(timeout);
         int maxSeconds = maxTime/1000;
         logger.debug("waitForValue: locator=" + locator + " timeout=" + timeout);
-        //this.sel.waitForCondition(script, timeout);
         String foundValue = null;
         for(int second=0;; second++) {
             if(second >= maxSeconds) {
                 throw new SeleniumException("waitForValue exceeded timeout: " + maxTime);
             }
-            try{
+            try{
                 //getValue throws an exception if it can't find locator
                 // - sleep for 1 sec and try again
                 // - otherwise break as we found the value
-                foundValue = sel.getValue(locator);
+                foundValue = sel.getValue(locator);
                 if(outParam != null) {
                     this.addParam(outParam, foundValue);
                 }
-                break; //
-            } catch(Exception e) {
+                break;
+            } catch(Exception e) {
                 //wait for 1 second and then resume
                 try {
                     Thread.sleep(1000);
                 } catch (InterruptedException threadE) {
-                    // TODO Auto-generated catch block
                     threadE.printStackTrace();
                 }
             }
         }
-    }    
-    
+    }
+
     public void setParam(Element elem) {
-        
         String name = replaceParam(elem.getAttributeValue("name"));
         String value = replaceParam(elem.getAttributeValue("value"));
-        
+
         if( (name != null) && (value != null)) {
             this.addParam(name, value);
         }
     }
+
     public void getValueCmd(Element elem) {
-        
         String locator = replaceParam(elem.getAttributeValue("locator"));
         String outParam = elem.getAttributeValue("out");
-        
+
         logger.debug("getValueCmd: locator=" + locator);
-        String foundValue = sel.getValue(locator);
+        String foundValue = sel.getValue(locator);
         if(outParam != null) {
             this.addParam(outParam, foundValue);
         }
-    }    
-    
+    }
+
     public void waitForCondition(Element elem) {
-        
         String script = elem.getAttributeValue("script");
         String timeout = elem.getAttributeValue("timeout");
-        
+
         logger.debug("waitForCondition: script=" + script + " timeout=" + timeout);
         this.sel.waitForCondition(script, timeout);
     }
-    
+
     public void openWindow(Element elem) {
-        
         String url = elem.getAttributeValue("url");
         String windowId = replaceParam(elem.getAttributeValue("windowId"));
-        
+
         logger.debug("openWindow: url=" + url + " windowId=" + windowId);
         this.sel.openWindow(url, windowId);
         return;
     }
-    
+
     public void selectWindow(Element elem) {
-        
         String windowId = replaceParam(elem.getAttributeValue("windowId"));
-        
+
         logger.debug("selectWindow:  windowId=" + windowId);
         this.sel.selectWindow(windowId);
         return;
     }
-    
+
     public void runScript(Element elem) {
-        
         String script = replaceParam(elem.getAttributeValue("script"));
-        
+
         logger.debug("runScript:  script=" + script);
         this.sel.runScript(script);
         return;
     }
-    
+
     public void loadData(Element elem) throws TestCaseException {
-            
+
             String file = elem.getAttributeValue("file");
             String iterations = elem.getAttributeValue("iterations");
             List<Element> children = UtilGenerics.cast(elem.getChildren());
-            
+
             DataLoader loader = new DataLoader(file, iterations, this, children);
             loader.runTest();
     }
 
     public void groovyRunner(Element elem) {
-        
+
         String urlName = elem.getAttributeValue("srcUrl");
         GroovyRunner runner = new GroovyRunner(urlName, this);
         runner.runTest();
     }
 
     public void jythonRunner(Element elem) {
-        
+
         String urlName = elem.getAttributeValue("srcUrl");
         JythonRunner runner = new JythonRunner(urlName, this);
         runner.runTest();
     }
 
     public void dataLoop(Element elem) throws TestCaseException {
-        
+
         String dataListName = elem.getAttributeValue("dataListName");
         List<Element> children = UtilGenerics.cast(elem.getChildren());
-        
+
         DataLoop looper = new DataLoop(dataListName, this, children);
         looper.runTest();
     }
@@ -517,16 +495,16 @@
         RemoteRequest loader = new RemoteRequest( this, children, loginAs, requestUrl, host, responseHandlerMode);
         loader.runTest();
     }
-    
+
     public void ifCmd(Element elem) throws TestCaseException {
         String isRun = replaceParam(elem.getAttributeValue("condition"));
         if (isRun != null && !isRun.equals("") && Boolean.valueOf(isRun)) {
             List <Element> children = elem.getChildren();
-            this.runCommands(children);                
+            this.runCommands(children);
         }else{
             Element child = elem.getChild("else");
             List <Element> children = child.getChildren();
-            this.runCommands(children);                
+            this.runCommands(children);
         }
     }
 
@@ -534,18 +512,18 @@
         String isRun = replaceParam(elem.getAttributeValue("isRun"));
         if (isRun != null && Boolean.valueOf(isRun)) {
             List <Element> children = elem.getChildren();
-            this.runCommands(children);                
+            this.runCommands(children);
         }
     }
-    
+
     public String getParamValue(String key) {
         return (String) this.map.get(key);
     }
-    
+
     public Object getParamValue(Object key) {
         return this.map.get(key);
     }
-    
+
     public void addParam(String name, String value) {
         logger.info("addParam: name=" + name + " value="+value);
         this.map.put(name, value);
@@ -557,57 +535,28 @@
     }
 
     private void assertContains(Element elem) throws TestCaseException {
-        String src = replaceParam(elem.getAttributeValue("src"));  
-        String test = replaceParam(elem.getAttributeValue("test"));  
+        String src = replaceParam(elem.getAttributeValue("src"));
+        String test = replaceParam(elem.getAttributeValue("test"));
         int indxSearch = src.indexOf(test);
         if(indxSearch == -1) {
             logger.info("assertContains didn't find " + test + " in the src");
             throw new TestCaseException("assertContains didn't find: " + test);
-            
+
         } else {
             logger.info("assertContains found " + test + " in the src");
         }
         //TODO: implement JUnit TestCase - Assert.assertTrue(indxSearch != -1);
-    }  
-    
-/*    private void selectPopup(Element elem) {
-        String locator = elem.getAttributeValue("locator");  
-//        String winId = elem.getAttributeValue("windowId");  
-        String timeout = elem.getAttributeValue("timeout");  
-        
-        //this.sel.waitForPopUp(winId, timeout);
-        this.sel.click(locator);
-        
-        String[] winNames = this.sel.getAllWindowNames();
-        this.sel.selectWindow("name=" + winNames[1]);
-    }
-    
-    private void getAllWindowIds(Element elem) {
-        String[] winIds = this.sel.getAllWindowIds();
-        for (String winId: winIds) {
-            logger.info("WindowId: " + winId);
-        }
-        String[] winNames = this.sel.getAllWindowNames();
-        for (String winName: winNames) {
-            logger.info("WindowName: " + winName);
-        }
-        
-        //this.sel.selectWindow("name=" + winNames[1]);
-        //System.out.println("Did we select WindowName: " + winNames[1]);
     }
-*/    
+
     private void selectPopup(Element elem) {
-        String locator = elem.getAttributeValue("locator");  
-//        String winId = elem.getAttributeValue("windowId");  
-        String timeout = elem.getAttributeValue("timeout");  
-        
-        //this.sel.waitForPopUp(winId, timeout);
-        this.sel.click(locator);
-        
+        String locator = elem.getAttributeValue("locator");
+        String timeout = elem.getAttributeValue("timeout");
+
+        this.sel.click(locator);
         String[] winNames = this.sel.getAllWindowNames();
         this.sel.selectWindow("name=" + winNames[1]);
     }
-    
+
     private void getAllWindowIds(Element elem) {
         String[] winIds = this.sel.getAllWindowIds();
         for(int i=0; i<winIds.length; i++) {
@@ -617,59 +566,54 @@
         for(int i=0; i<winIds.length; i++) {
             logger.info("WindowName: " + winNames[i]);
         }
-        
-        //this.sel.selectWindow("name=" + winNames[1]);
-        //System.out.println("Did we select WindowName: " + winNames[1]);
     }
-    
+
     /**
      * Gets the hidden value of a list box
      * @param elem
      */
     private void getSelectedValue(Element elem) {
-        String locator = elem.getAttributeValue("locator");  
-        String out = elem.getAttributeValue("out");  
-        String text = this.sel.getSelectedValue(locator);  
+        String locator = elem.getAttributeValue("locator");
+        String out = elem.getAttributeValue("out");
+        String text = this.sel.getSelectedValue(locator);
         logger.info("getSelectedValue: locator=" + locator + " text="+text);
         addParam(out, text);
     }
-    
+
     /**
      * Gets the visible (displayed) value of a list box
      * @param elem
      */
     private void getSelectedLabel(Element elem) {
-        String locator = elem.getAttributeValue("locator");  
-        String out = elem.getAttributeValue("out");  
-        String text = this.sel.getSelectedLabel(locator);  
+        String locator = elem.getAttributeValue("locator");
+        String out = elem.getAttributeValue("out");
+        String text = this.sel.getSelectedLabel(locator);
         logger.info("getSelectedValue: locator=" + locator + " text="+text);
         addParam(out, text);
     }
     private void getSelectedId(Element elem) {
-        String locator = elem.getAttributeValue("locator");  
-        String out = elem.getAttributeValue("out");  
-        String text = this.sel.getSelectedId(locator);  
+        String locator = elem.getAttributeValue("locator");
+        String out = elem.getAttributeValue("out");
+        String text = this.sel.getSelectedId(locator);
         addParam(out, text);
     }
     private void getHtmlSource(Element elem) {
-        String paramName = elem.getAttributeValue("out");  
-        String text = this.sel.getHtmlSource();  
+        String paramName = elem.getAttributeValue("out");
+        String text = this.sel.getHtmlSource();
         logger.info("getHtmlsource: paramName=" + paramName + " text=" + text);
         addParam(paramName, text);
     }
-    
+
     private void getBodyText(Element elem) {
-        String paramName = elem.getAttributeValue("out");  
-        String text = this.sel.getBodyText();  
-//        logger.info("getBodyText: paramName=" + paramName + " text=" + text);
+        String paramName = elem.getAttributeValue("out");
+        String text = this.sel.getBodyText();
         addParam(paramName, text);
     }
     private void testcase(Element elem) {
         System.err.println("New testcase: " + elem.getAttributeValue("file"));
         String testFile = elem.getAttributeValue("file");
         String isRun = replaceParam(elem.getAttributeValue("isRun"));
-        
-        
+
         String absolutePath = getAbsolutePath(testFile);
         String parentTestCase = new String(this.testCaseDirectory);
         SeleniumXml newTest = new SeleniumXml(this);
@@ -680,14 +624,13 @@
             }else{
                 System.err.println(" testFile :"+testFile+ "  isRun:"+isRun);
             }
-            
         } catch (Exception e) {
             e.printStackTrace();
             Assert.fail("Testcase error for file: " + absolutePath);
         }
         newTest.testCaseDirectory  = parentTestCase;
     }
-    
+
     private String getFileDirectoryForRelativePath(String filePath){
         String directory = null;
         if (filePath.indexOf("/") != -1   ) {
@@ -698,13 +641,14 @@
             directory = filePath.substring(0, (lastIndexOf+1));
         }
         return directory;
-    }    
+    }
     private void clickAt(Element elem) {
         logger.debug("clickAt: " + replaceParam(elem.getAttributeValue("locator")));
         String locator = replaceParam(elem.getAttributeValue("locator"));
         String coordString = elem.getAttributeValue("coordString");
         this.sel.clickAt(locator, coordString);
     }
+
     /**
      * @param elem takes a Selenium String locator.  See Javadocs for more information.  Here are some
      * example locators:
@@ -716,90 +660,91 @@
     private void clickCmd(Element elem) {
         logger.info("clickCmd: " +  replaceParam(elem.getAttributeValue("locator")));
         try {
-            this.sel.click(replaceParam(elem.getAttributeValue("locator")));  
+            this.sel.click(replaceParam(elem.getAttributeValue("locator")));
         } catch (SeleniumException e) {
-        
+
             logger.info("caught SeleniumException Name:"+elem.getName()+"  , Value: "+elem.getAttributeValue("locator"));
-            
+
             e.printStackTrace();
         }
     }
+
     private void doubleClick(Element elem) {
         logger.info("clickCmd: " +  replaceParam(elem.getAttributeValue("locator")));
-        this.sel.doubleClick((replaceParam(elem.getAttributeValue("locator"))));  
+        this.sel.doubleClick((replaceParam(elem.getAttributeValue("locator"))));
     }
-    
+
     private void checkCmd(Element elem) {
         logger.info("checkCmd: " +  replaceParam(elem.getAttributeValue("locator")));
-        this.sel.check(replaceParam(elem.getAttributeValue("locator")));  
+        this.sel.check(replaceParam(elem.getAttributeValue("locator")));
     }
+
     private void uncheckCmd(Element elem) {
         logger.info("uncheckCmd: " +  replaceParam(elem.getAttributeValue("locator")));
-        this.sel.uncheck(replaceParam(elem.getAttributeValue("locator")));  
+        this.sel.uncheck(replaceParam(elem.getAttributeValue("locator")));
     }
+
     private void typeCmd(Element elem) {
         String name = elem.getAttributeValue("name");
-        String value = replaceParam(elem.getAttributeValue("value"));  
+        String value = replaceParam(elem.getAttributeValue("value"));
         logger.info("typeCmd: id=" + name + " value=" + value);
-        this.sel.type(name, value);  
+        this.sel.type(name, value);
     }
+
     /*
      * setSpeed delays the time for the next selenium command to execute
      */
     private void setSpeed(Element elem) {
         logger.info("setSpeed: " + elem.getAttributeValue("value"));
-        this.sel.setSpeed(elem.getAttributeValue("value"));  
+        this.sel.setSpeed(elem.getAttributeValue("value"));
     }
+
     /*
-     * waitForPageToLoadCmd is the max timeout selenium will wait for a page to load.  
-     * Commands are executed immediately after the page loads therefore if the pages are
-     * fast the test will go through the pages very quickly.  Use setSpeed if you want to
+     * waitForPageToLoadCmd is the max timeout selenium will wait for a page to load.
+     * Commands are executed immediately after the page loads therefore if the pages are
+     * fast the test will go through the pages very quickly.  Use setSpeed if you want to
      * see the pages executed slower.
      */
     private void waitForPageToLoadCmd(Element elem) {
         logger.info("waitForPageToLoadCmd: " + elem.getAttributeValue("value"));
-        this.sel.waitForPageToLoad(elem.getAttributeValue("value"));  
+        this.sel.waitForPageToLoad(elem.getAttributeValue("value"));
     }
+
     private void openCmd(Element elem) {
-        String cmd = replaceParam(elem.getAttributeValue("value"));  
+        String cmd = replaceParam(elem.getAttributeValue("value"));
         logger.info("openCmd: " + cmd);
-        this.sel.open(cmd);  
-        //this.sel.windowMaximize();
+        this.sel.open(cmd);
     }
+
     private void uniqueIdCmd(Element elem) {
-        String paramName = elem.getAttributeValue("out");  
+        String paramName = elem.getAttributeValue("out");
         String paramValue = RandomStringUtils.randomAlphanumeric(MAX_STR_LENGTH).toUpperCase();
         logger.info("uniqueIdCmd: parameter=" + paramName + " value=" + paramValue);
         addParam(paramName, paramValue);
     }
-    
+
     /*
-     * captureText command captures the current HTML page and runs a regex to
-     * get the specified string.  
+     * captureText command captures the current HTML page and runs a regex to
+     * get the specified string.
      *
      * For example:  if the following string existed in a web page
-     *
      *   "xx <tag a=b> yy </tag> zz"
-     *
-     *  
      * And you wanted to capture the value in the of the XML (yy).  You would do the following;
      * Use regxp: "<(\\S+?).*?>(.*?)</\\1>";  //The \\1 reuses group 1
-     *
-     * <captureText regex="<(\\S+?).*?>(.*?)</\\1>" group="2" results="xmlValue" />
-     *
+     *
+     * <captureText regex="<(\\S+?).*?>(.*?)</\\1>" group="2" results="xmlValue" />
+     *
      * The command will find the <tag>.. and group 2 contains the 'yy' value.
-     *
+     *
      * Note: if 'group' is null it will default to the entire regex group.
      */
     private void captureTextInPageCmd(Element elem) {
-        
-        String regex = elem.getAttributeValue("regex");  
-        String group = elem.getAttributeValue("group");  
-        String results = elem.getAttributeValue("results");  
+        String regex = elem.getAttributeValue("regex");
+        String group = elem.getAttributeValue("group");
+        String results = elem.getAttributeValue("results");
         Pattern pattern = Pattern.compile(regex);
-    
-        String targetString = this.sel.getHtmlSource();  
-        
+        String targetString = this.sel.getHtmlSource();
+
         // Create the 'target' string we wish to interrogate.
         // Get a Matcher based on the target string.
         Matcher matcher = pattern.matcher(targetString);
@@ -818,7 +763,7 @@
             addParam(results, resultsValue);
         } else {
             logger.info("Didn't find results with regex: " + regex);
-            
+
             //TODO: temporary to capture the missed string
             /*try {
                   FileWriter out = new FileWriter("c:/dev/erep/output/failure.txt");
@@ -831,16 +776,16 @@
             } */
         }
     }
-    
+
     private void randomAlphaStringCmd(Element elem) {
         int nSize = 0;
         int nPrefixSize = 0;
-        String paramName = elem.getAttributeValue("out");  
-        String size = elem.getAttributeValue("size");  
+        String paramName = elem.getAttributeValue("out");
+        String size = elem.getAttributeValue("size");
         if(size != null) {
             nSize = Integer.parseInt(size);
         }
-        String prefix = elem.getAttributeValue("prefix");  
+        String prefix = elem.getAttributeValue("prefix");
         if(prefix != null) {
             nPrefixSize = prefix.length();
         }
@@ -855,34 +800,40 @@
         logger.info("randomStringAlphaCmd: paramName=" + paramName + " paramValue=" + paramValue);
         addParam(paramName, paramValue);
     }
+
     private void randomStringCmd(Element elem) {
-        String paramName = elem.getAttributeValue("out");  
-        String size = elem.getAttributeValue("size");  
-        String prefix = elem.getAttributeValue("prefix");  
+        String paramName = elem.getAttributeValue("out");
+        String size = elem.getAttributeValue("size");
+        String prefix = elem.getAttributeValue("prefix");
         String paramValue = TestUtils.createRandomString(prefix, Integer.parseInt(size));
         logger.info("randomStringCmd: paramName=" + paramName + " paramValue=" + paramValue);
         addParam(paramName, paramValue);
     }
+
     private void getSelectedIdsCmd(Element elem) {
         logger.info("getSelectdIdsCmd: " + elem.getAttributeValue("value"));
-        this.sel.getSelectedIds(elem.getAttributeValue("value"));  
+        this.sel.getSelectedIds(elem.getAttributeValue("value"));
     }
+
     private void selectCmd(Element elem) {
         String selectLocator = elem.getAttributeValue("locator");
         String optionLocator = elem.getAttributeValue("option");
         logger.info("selectCmd: selectLocator=" + selectLocator + " optionLocator=" + optionLocator);
-        this.sel.select(selectLocator, optionLocator);  
+        this.sel.select(selectLocator, optionLocator);
     }
+
     private void printCmd(Element elem) {
         String value = replaceParam(elem.getAttributeValue("value"));
         logger.info("Print: " + value);
     }
+
     private void copyCmd(Element elem) {
-        String toStr = replaceParam(elem.getAttributeValue("to"));
-        String fromStr = replaceParam(elem.getAttributeValue("from"));  
+        String toStr = replaceParam(elem.getAttributeValue("to"));
+        String fromStr = replaceParam(elem.getAttributeValue("from"));
         logger.info("copyCmd: to=" + toStr + " from=" + fromStr);
         addParam(toStr, fromStr);
     }
+
     private void appendCmd(Element elem) {
         logger.info("appendCmd: src1=" + elem.getAttributeValue("src1") + " src2=" + elem.getAttributeValue("src2"));
         String newStr = replaceParam(elem.getAttributeValue("src1")) + replaceParam(elem.getAttributeValue("src2"));
@@ -891,10 +842,10 @@
 
     private void loadParameter(Element elem) {
         logger.info("loadParameter: fileName=" + elem.getAttributeValue("file") );
-        
         String parameterFile = elem.getAttributeValue("file");
         String absolutePath = getAbsolutePath(parameterFile);
         BasicConfigurator.configure();
+
         try {
             InputStream in = new FileInputStream(absolutePath);
             Properties parameter = new Properties();
@@ -902,25 +853,24 @@
             in.close();
 
             Set<Entry<Object, Object>> entrySet = parameter.entrySet();
-            
+
             for(Map.Entry entry : entrySet) {
                 String key = (String)entry.getKey();
                 String value = (String)entry.getValue();
                 System.out.println(key + " = " + value);
                 addParam(key, value);
-            }            
+            }
         } catch (Exception e) {
             logger.error("Can not load parameter . ");
         }
-        
+
         String newStr = replaceParam(elem.getAttributeValue("src1")) + replaceParam(elem.getAttributeValue("src2"));
         addParam(elem.getAttributeValue("out"), newStr);
     }
 
     public String replaceParam(String value) {
-        
         if (value == null) { return value; }
-        
+
         StringBuilder buf = new StringBuilder();
         int end = 0;
         int start = 0;
@@ -932,13 +882,13 @@
             end = remainingStr.indexOf("}");
             String paramName = remainingStr.substring(start + 2, end);
             replacedVal = getParamValue(paramName);
-            if (replacedVal == null) {
+            if (replacedVal == null) {
                 replacedVal = "";
             }
             buf.append(replacedVal);
             remainingStr = remainingStr.substring(end + 1);
             end = 0;
-        }
+        }
         buf.append(remainingStr.substring(end));
         return buf.toString();
     }
@@ -948,35 +898,32 @@
         if( (value.indexOf("${") != -1) &&
             (value.indexOf("}", 1) != -1) ) {
             return true;
-        }
+        }
         return false;
     }
-    
+
     //TODO read properties file to setup selenium
     private void setupSelenium() {
-        
         //return if Selenium has already been setup
         //e.g. nested selenium test cases.
         if(this.sel != null) return;
-        
+
         String serverHost = null;
         String serverPort = null;
         String browser = null;
         String startUrl = null;
-        
+
         //First initialize with property values
         if(props != null ) { //Get setup params from property value
-            
+
             serverHost = props.getProperty("serverHost", "localhost");
             serverPort = props.getProperty("proxyPort", "4444");
             browser = props.getProperty("browser", "*iexplore");
             startUrl = props.getProperty("startUrl", "http://localhost:8080");
         }
-        
         //Second over ride properties if defined in the "setup" element
         Element elem = this.doc.getRootElement().getChild("setup");
-        if (elem != null) {
-        
+        if (elem != null) {
             //Override properties if specified
             if( elem.getAttributeValue("serverHost") != null ) {
                 serverHost = elem.getAttributeValue("serverHost");
@@ -998,6 +945,7 @@
         this.sel = new DefaultSelenium(serverHost, Integer.parseInt(serverPort), browser, startUrl);
         this.sel.start();
     }
+
     private String getAbsolutePath(String fileName){
         logger.info("getAbsolutePath: fileName=" + fileName);
         String fileAbsolutePath = fileName;
@@ -1009,31 +957,32 @@
         logger.info("getAbsolutePath: returning fileName=" + fileName);
         return fileAbsolutePath;
     }
+
     private void readFile(String fileName) throws JDOMException, IOException {
         String absolutePath = getAbsolutePath(fileName);
         File xmlFile = new File(absolutePath);
-        
+
         SAXBuilder builder = new SAXBuilder();
         this.doc = builder.build(xmlFile);
     }
-    
+
     public String getUserName() {
         return this.username;
     }
-    
+
     public void setUserName(String val) {
         this.username = val;
     }
-    
+
     public void setPassword(String val) {
         this.password = val;
     }
-    
+
     public String getPassword() {
         return this.password;
     }
-    
+
     public Map <String, Object> getMap() {
         return this.map;
     }
-}
\ No newline at end of file
+}