COSMOS/COSMOS TEST AUTO

From Eclipsepedia

Jump to: navigation, search

Contents

1) Introduction

This page provides information and links related to Test Automation of COSMOS junits.

2) Test Automation Overview


The COSMOS build is based on Eclipse PDE (Plug-in Development Environment) and it runs in the eclipse server. Currently the candidate drivers at the end of an iteration are manually tested by the respective component teams. This initiative is to define the process of testing and automate junit execution as part of the build. By automating and integrating with the build, testing can be done more often and bugs will be discovered early on.

The test cases are available in CVS at the following location:
Cosmos cvs.jpg

Go to HEAD -> org.eclipse.cosmos -> tests

3) Test Details

The following table briefly explains the different contacts for the test cases as well as the pre reqs and test setup needed to execute it.

Sl No Component Test Project Contact Person Dependencies Test Setup Test Automation
1data-collectionorg.eclipse.cosmos.dc.cmdf.services.testsDavid Whitemanorg.eclipse.cosmos.common.testsThe directory in testTempDirectory in CMDBfTestMessages.properties will be created. This will need to be changed from the default for Linux testing.Done, only normal junits, no plugin junits
2data-collectionorg.eclipse.cosmos.dc.framework.test???Execution works fine, but all the test cases fails, need this to be deployed http://localhost:8080/cosmos/services
3data-collectionorg.eclipse.cosmos.dc.tests???The project cannot be compiled due to following dependency errors:

missing required Java projects:
1) org.apache.ibatis
2) org.eclipse.cosmos.dc.common
3) org.eclipse.cosmos.dc.local.registry
4) org.eclipse.cosmos.dc.remote.wsdm
5) org.eclipse.cosmos.dc.spec
6) org.eclipse.cosmos.management.common
7) org.eclipse.cosmos.management.wsdm

4data-collectionorg.eclipse.cosmos.example.mdr.registration.testsAli MehreganiCOSMOS environmentThis test requires the COSMOS environment to be running before the test is executed. It's meant to perform functional testing on the registration service. It's probably unrealistic to run this plug-in against each build. I would exclude this test from your test automation framework
1data-reportingorg.eclipse.cosmos.dr.tests.drs.service.handlerSheldon Lee-LoyThe COSMOS End 2 End should be deployed on http://localhost:8080The project cannot be compiled due to following dependency errors:

1) missing required Java project: 'org.eclipse.cosmos.dr.drs.service.handler'
2) Target runtime Apache Tomcat v5.5 is not defined

2data-reportingorg.eclipse.cosmos.dr.tests.drs.service.handler.tptpSheldon Lee-Loyorg.eclipse.cosmos.dr.tests.drs.service.handlerThe COSMOS End 2 End should be deployed on http://localhost:8080The project was not built since it depends on org.eclipse.cosmos.dr.tests.drs.service.handler, which has build path errors
1management-enablementorg.eclipse.cosmos.me.dmtoolkit.testsDavid Whitemanorg.eclipse.cosmos.common.tests, Webtools platformOne manual test in addition to a plugin test.InactiveProcessException while executing testcase
2management-enablementorg.eclipse.cosmos.me.management.tests???

The project cannot be compiled due to following dependency errors:
missing required Java projects:
1) org.apache.axis2.jaxws.api
2) org.apache.axis2.jws.api
3) org.eclipse.cosmos.me.management.common
4) org.eclipse.cosmos.me.management.wsdm

1resource-modelingorg.eclipse.cosmos.rm.repository.testsDavid Whitemanorg.eclipse.cosmos.common.testsSee org.eclipse.cosmos.rm.repository.tests/src/org/eclipse/cosmos/rm/repository/tests/common/testMessages.properties and org.eclipse.cosmos.rm.repository.tests/src/META-INFDone, only normal juints, no plugin junits. Configuration reqd as mentioned.
2resource-modelingorg.eclipse.cosmos.rm.smlif.testsDavid Whitemanorg.eclipse.cosmos.common.testsConfigure artifacts in org.eclipse.cosmos.rm.smlif.tests/test-resources. Open the TPTP artifacts to see documentation on what is required.Partially done, AllTests.testsuite works. Error while executing TPTP plugin junits - junit.framework.AssertionFailedError: The project P/org.eclipse.cosmos.rm.example.datacenter does not exist in the test workspace at E:/Bobz/workarea/COSMOS/TestAuto/tmp/test-workspace
3resource-modelingorg.eclipse.cosmos.rm.validation.testsDavid Whitemanorg.eclipse.cosmos.common.testsSee org.eclipse.cosmos.rm.validation.tests/src/org/eclipse/cosmos/rm/validation/internal/common/testMessages.properties. Also need to configure artifacts in org.eclipse.cosmos.rm.validation.tests/test-resources for plugin tests (open the artifacts to read documentation on doing this).Done, both normal and plugin junits work.



We will try to automate as much as possible from the above list using the TPTP Test Automation Framework.

4) Test Automation Setup

Please check "/org.eclipse.cosmos/releng/org.eclipse.cosmos.releng.builder/test-automation" cvs structure for the files refer in following instructions.

 
1) To create proper automation directory structure please checkout 
and run "create-test-structure.bat" as follows : 

    create-test-structure.bat D:\COSMOS\test-automation 

This will create following directory structure in test automation directory.
         
        artifacts
              |-ant
              |-cvs
              |-cosmos
              |-tptp45
              |-tptp441
              |-webapp
         bin
         config
         lib
         logs
         script
         test-results
2) Install apache-ant-1.7.0-bin to "artifacts\ant" location.
3) Copy cvs.exe to "artifacts\cvs" location. 
   Download this from http://ftp.gnu.org/non-gnu/cvs/binary/stable/x86-woe/.
   cvs-1-11-14.zip file contains cvs.exe.
4) Copy following zip files to "artifacts\tptp45" location.   
   These files can be found at TPTP 4.5 download page.
   (For axis check apache web page)  

      tptp.runtime.allInOne.win32.win32.x86-TPTP-4.5.0.zip 
      org.eclipse.tptp.test.report.birt-TPTP-4.5.0.zip 
      birt-report-framework-2_3_0.zip 
      wtp-R-3.0-20080616152118a.zip 
      GEF-runtime-3.4.0.zip 
      dtp_1.6.0.zip 
      axis2-1.3-bin.zip 

5) Copy following zip files to "artifacts\tptp441" location and then unzip them.
   These files can be found at TPTP 4.4.1 download page. 

      tptp.runtime.allInOne.win32.win32.x86-TPTP-4.4.1.zip 
      birt-report-framework-2_2_2.zip 
      dtp_1.5.2_022008.zip 
      GEF-runtime-3.3.2.zip 
      wtp-R-2.0.2-20080223205547.zip 

6) Copy following files to "artifacts\webapp" location.
   
      apache-tomcat-5.5.27.zip 
      axis2.war 
      birt-runtime-2_3_0.zip 
         
7) Copy "run_testauto.bat" file to "bin" directory and then modify following
   variable in that batch file.
   
      set automation_home=D://COSMOS//test-automation
      set cvspath=D:\COSMOS\test-automation\artifacts\cvs
      set antpath=D:\COSMOS\test-automation\artifacts\ant\bin
   
   Make sure to use same file seperator character for variables as 
   given in batch file.
   
8) Copy "testauto.properties" file to "config" directory and then modify following
   variable in that file according to test machine environment.
   
      JAVA_HOME=C:/Program Files/IBM/Java50
      cosmos-url=http://build.eclipse.org/technology/cosmos/downloads/COSMOS/1.1.0/
      scp-user=build
      scp-pwd=build-cosmos
      scp-host=build.eclipse.org
      scp-host-path=/shared/technology/cosmos/downloads/COSMOS/1.1.0

   Provide your eclipse user and password information for scp related settings.   
9) Copy following files to "script" directory.
     
      testauto.xml
      testauto_setup.xml
      testdc.xml
      testdr.xml
      testrm.xml
      testsdd.xml
(10) To setup "lib" directory.
 
     Copy "ant-tptp.jar" to lib from 
     "tptp.runtime.allInOne.win32.win32.x86-TPTP-4.5.0.zip/eclipse\dropins\
     eclipse\plugins\org.eclipse.hyades.execution_4.4.200.v200806120100".

     Copy "com.ibm.icu_3.8.1.v20080530.jar" to lib from
     "tptp.runtime.allInOne.win32.win32.x86-TPTP-4.5.0.zip/eclipse/plugins".

     Copy "org.eclipse.osgi_3.4.0.v20080605-1900.jar" to lib from
     "tptp.runtime.allInOne.win32.win32.x86-TPTP-4.5.0.zip/eclipse/plugins".

     Copy "jsch-0.1.29.jar" to lib. (This file used for ant scp task)
     Download this from http://sourceforge.net/project/showfiles.php? group_id=64920&package_id=107616

     Checkout "test-automation/src" from cvs,create Jar out of it 
     and copy it to lib. Name of the jar file does not matter but 
     preferrably it can be named as "TestAuto.jar"
11) Run "bin/run_testauto.bat" to run the test-automation.