You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by si...@avalon.apache.org on 2004/04/02 12:10:54 UTC

[Apache Avalon Wiki] New: AbstractMerlinTestCase

   Date: 2004-04-02T02:10:52
   Editor: 80.53.234.114 <>
   Wiki: Apache Avalon Wiki
   Page: AbstractMerlinTestCase
   URL: http://wiki.apache.org/avalon/AbstractMerlinTestCase

   no comment

New Page:

Project and test cases classes should be placed in separate directories in your project main directory, for example build/classes and build/tests.In next step you should prepare block.xml file which has classloader with classpath entry pointing at build/classes directory.
{{{
<container name="my-container>

  <classloader>
    <classpath>
      <fileset dir="build/classes"/>
    </classpath>
  </classloader>

</container>
}}}

All required libraries should be placed on JUnit classpath, below you can find sample ant target.
{{{
<junit showoutput="true" fork="true" printsummary="yes" newenvironment="true">
  <sysproperty key="basedir" value="${basedir}"/>
  <classpath>
    <pathelement path="${build.tests.dir}"/>
    <pathelement path="${build.classes.dir}"/>
    <path path="${libs.dir}/merlin-kernel-unit-3.2.5.jar"/>
    <path path="${libs.dir}/avalon-repository-main-1.2.jar"/>
    <path path="${libs.dir}/avalon-framework-api-4.1.5.jar"/>
    <path path="${libs.dir}/mrt-service-impl-0.1.jar"/>
    <path path="${libs.dir}/hibernate-2.1.2.jar"/>
  </classpath>
  <batchtest fork="true" todir="${build.tests.dir}">
    <formatter type="xml"/>
    <fileset dir="${build.tests.dir}">
      <include name="com/mrt/vend/impl/tests/**"/> 
    </fileset>
  </batchtest>
</junit>
}}}
It's very important to run tests in separate VM (fork="true"), because only then we avoid use of ant's classloader.

---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org