Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Development/Testing/SDO
< EclipseLink | Development | Testing
Revision as of 16:22, 25 October 2007 by Unnamed Poltroon (Talk) (→Building & Running the SDO Junit tests)
Summary
This page is intended to outline the setup and execution steps required to successfully run the SDO JUnit tests. There are 2 ways to develop using EclipseLink.
- Checkout using subclipse all projects individually into your eclipse workspace and develop/debug there by using eclipse to build classes.
- Checkout using tortoiseSVN the root trunk into a folder outside your workspace and either use ant to build an eclipselink.jar or create proxy projects using link to source from eclipse - Recommended if you would like to build the eclipselink.jar
Building & Running the SDO Junit tests
Prerequisites:
- Eclipse installed with the subclipse pluggin or TortoiseSVN for out of eclipse checkouts
- Required projects eclipselink.core and eclipselink.lib checked out into workspace/view
- eclipselink.sdo, eclipselink.sdo.lib and eclipselink.sdo.test checked out into workspace/view
- Edit build.properties either at this project level or globally in your user directory.
- Windows: C:\Documents and Settings\<user-dir> Linux:
- javaee.lib=<jar_location>/javaee.jar - required by MOXy or core tests
- junit.lib=<JUNIT_HOME>/junit.jar - required by eclipselink.sdo.test
- tools.lib=<JAVA_HOME/lib/tools.jar - required by eclipselink.sdo.test
- Currently an integrated test suite that will run all EclipseLink projects including SDO is being developed. You can run the SDO test suite by overriding some variables in your <user-dir>/build.properties depending on whether you are running inside an eclipse workspace (2) or not (1). The eclipselink.core.lib variable already set on the local build.properties will resolve a dependency on org.eclipse.persistence.internal.libraries.asm in eclipselink-asm.jar
- Running ant outside an eclipse workspace
- Leave eclipselink.* variables as-is on the local build.properties
- Running ant inside an eclipse workspace
- Modify the following variables to account for the different directory structure...
- eclipselink.core=../../foundation/eclipselink.core
- eclipselink.core.lib=../../foundation/eclipselink.core.lib
- Modify the following variables to account for the different directory structure...
- Running ant outside an eclipse workspace
- Configuration options
- The tests run by default using a non-static customContext=true which is the mode that will normally be used in a multithreaded container.
- customContext = true (run test using an thread-safe instantiable instance of SDOHelperContext) - default
- customContext = false (run test using static HelperContext Singleton)
1) Building & Running within an Eclipse Workspace via subclipse checkout
The SDO test suite is written using JUnit. It consists of a set of jars that contain various tests and resources. The SDO tests are contained in the eclipselink.sdo.test project
- Running using Ant
- Navigate to the <workspace>/eclipselink.sdo.test directory
- Run the sdo.test/build.xml by typing "ant". This will compile in order eclipselink.core, eclipselink.sdo and eclipselink.sdo.test and should take around 2-4 min.
- View results in the reports subdirectory
- Running using Eclipse
- Setting up Eclipse
- Checkout 5 of 11 new projects (projects will be created inside the workspace) (core,core.lib,sdo,sdo.lib,sdo.test) using SVN (turn off automatic build temporarily)
- Setting up Eclipse
- Goto "Running a suite"
2) Building & Running within a Subversion checkout (outside an eclipse workspace)
- Create your own view directory - for example "c:/view_el/"
- Check out the SVN project for SDO into this directory using the format svn+ssh://<username>@<svn_session>/svnroot/technology/org.eclipse.persistence/trunk
- Either build all 4 core, jpa, moxy and sdo projects into an eclipselink.jar by following the instructions in Building EclipseLink Source - specifically the section on setting up the extension jars not included in eclipselink.core.lib like (aqapi.jar, sdoapi.jar(spatial), ojdb14dms_10.jar(or other jdbc lib), xdb.jar, xml.jar, xmlparserv2.jar), or allow the sdo test script to run off classes by doing the following...
- Edit your local or global build.properties file
- Navigate to the eclipselink.sdo.test directory
- Run sdo.test/build.xml by typing "ant"
- View results in the reports subdirectory under true|false
- Setting up Eclipse
- Create 5 of 11 new projects (core,core.lib,sdo,sdo.lib,sdo.test) from existing source = "c:/view_el/eclipselink.* (turn off automatic build temporarily)
- At this point you should get 2 errors if the TOOLS_LIB variable is not set for sdo.test. Set this variable globally using Window | Preferences | Java | Build Path | Classpath Variables - new -> name=TOOLS_LIB, path==<JAVA_HOME/lib/tools.jar
- Goto "Running a suite"
3) Running a suite
- Turn "build automatically" back on to build classes
- Pick a suite - we will use org.eclipse.persistence.testing.sdo.model.sequence.SDOSequenceTestCS as it is small and utilizes resources as well as core xsd/xml define/load functions.
- Create a new java application run/debug target
- Modify the arguments tab|working directory to point to ${workspace_loc:eclipselink.sdo.test/resource} or create a resource variable to reuse in other targets - this is where all tests will execute.
- Run the test and observe results in the Console
4) Interpreting Ant Test Results
- See the test results page at []
- Depending on the value of the customContext variable look under the true|false subdirectory in junit-noframes.html