Developers

From Autodrive
Jump to: navigation, search

This chapter describes useful information for developers or people wanting to know about compiling and eventual extending the autodriver.

Java version

Java version used is 1.7 or later. Much of the driver should be able to compile with lower versions though.

Javadoc

JavaDoc documentation can be found here

Maven version

Apache maven 3.0.4 is used for building the project.

Source code

Source code is hosted on a project page @ sourceforge. The source code can be fecthed from subversion svn://svn.code.sf.net/p/autodrive/code/trunk .

svn co https://svn.code.sf.net/p/autodrive/code/trunk Automation

This results in a project folder with two folders:

  1. Automation
    1. Driver
    2. Scripts

Compile

Enter the Driver folder and type:

mvn clean & mvn install

Binary artefacts should appear in the subfolder target/lib.

Dependency information

Not all dependencies are found in maven repositories. To remedy missing dependencies either provide the jar files or remove the plugin using them.

To accomendate exchanging plugins, plugins are handled as submodules in maven. This way plugins can be shared even though they depend on some licensed product.

In the main parent pom.xml file the modules look like this:

<modules>
    <module>driver</module>
    <module>plugins/WLST</module>
    <module>plugins/Selenium</module>
    <module>plugins/Connectivity</module>
    <module>plugins/SQL</module>
    <module>plugins/Webservice</module>
    <module>plugins/LDAP</module>
    <module>plugins/MIS</module>    
  </modules>

Both WLST and MIS plugins depends on weblogic libraries, which must be provided from a weblogic installation. There are two dependencies that should be added in order to compile these two plugins. They can be provided by typing something like:

mvn install:install-file -Dfile=weblogic.jar -DgroupId=com.bea.weblogic.server.lib -DartifactId=weblogic -Dversion=9.2 -Dpackaging=jar
mvn install:install-file -Dfile=sb-public.jar -DgroupId=com.bea.weblogic.server.lib -DartifactId=sb-public -Dversion=9.2 -Dpackaging=jar

The SQL plugins depends on its drivers, currently:

mvn install:install-file -Dfile=ojdbc14.jar -DgroupId=ojdbc -DartifactId=ojdbc -Dversion=14 -Dpackaging=jar

Selenium plugin is a bit special because that project has a release cycle following that of firefox. Therefore recompilation is necessary when firefox is upgraded. The autodriver project assumes LATEST versions to be used.