View source | Discuss this page | Page history | Printable version   

Exchange Modules testing in Continuous Integration

Contents

Introduction

The Openbravo Exchange is the marketplace to find solutions for the leading open source ERP. It is necessary to test the modules that are published in exchange. This document describes the process Openbravo follow in testing the modules and reporting their status on exchange to appropriate product owners

Work Flow

How integrated to builds

The module install and uninstall check are done using the selenium test suite. We use Automated test suite and create a appropriate test class for the module to install/uninstall.

Prerequisites

Clone the automated selenium test from openbravo scm

 hg clone https://code.openbravo.com/tools/automation/pi-exchange /srv/hudson_setup/exchange_modules/smoke_suite

Create the test case for each module to install and uninstall and place them in path "src-test/com/openbravo/test/integration/erp/testsuites/continuousintegration/exchange"

Syntax: INM0XY_Install<ModuleName>.java
Example: INM033_InstallShipmentsAwaitingInvoiceReport.java
Syntax:  UNM0XY_Install<ModuleName>.java
Example: UNM033_UnInstallShipmentsAwaitingInvoiceReport.java

Create ant target in build.xml

example :
 <target name="test.integration.erp.testcases.exchangemodules.INM033" >
   <antcall target="test.integration">
     <param name="testclass" value="com.openbravo.test.integration.erp.testcases.smoke.masterdata.INM033_InstallShipmentsAwaitingInvoiceReport" />
   </antcall>
 </target>
example :
 <target name="test.integration.erp.testcases.exchangemodules.UNM033" >
   <antcall target="test.integration">
     <param name="testclass" value="com.openbravo.test.integration.erp.testcases.smoke.masterdata.UNM033_UnInstallShipmentsAwaitingInvoiceReport" />
   </antcall>
 </target>

Note: Once the new script added is tested and on successful execution the script must be pushed to https://code.openbravo.com/tools/automation/main

Job Specifications

# This is similar to cronjob specification
# Example: Trigger on every Sunday at 1.15am
15 1 * * 7 
Syntax:
sh /srv/hudson_setup/exchange_modules/modInstall.sh "<Module1 Module2 ...>" $WORKSPACE
sh /srv/hudson_setup/exchange_modules/modInstall.sh INM001 INM006" $WORKSPACE

Example Jobs

Refer the below link for existing jobs that test modules in exchange http://builds.openbravo.com/view/modules/

Retrieved from "http://wiki.openbravo.com/wiki/Exchange_Modules_testing_in_Continuous_Integration"

This page has been accessed 6,927 times. This page was last modified on 24 May 2010, at 10:33. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.