[jboss-user] [Beginners Corner] - in-container test with JbossTestCase

susi33 do-not-reply at jboss.com
Fri Sep 1 07:58:56 EDT 2006


Hi
I would like to run in-container tests with the jboss testsuite. I'm using
a simple JbossTestCase class and an ant script to build it. 
I'm using:
Java 1.5, Jboss 4.0.4GA, Ant 1.6.5, Junit 3.8.1, 
Eclipse 3.12, Fedora Core 5. 

My build.xml looks like this (only the test target):

  | <target name="test-run" depends="jar">
  | 		<delete dir="${test_classes.dir}"/>
  | 		<mkdir dir="${test_classes.dir}" />
  | 		<javac srcdir="${test.src.dir}" 
  | 			   destdir="${test_classes.dir}">
  | 			<classpath refid="compile.classpath" />
  | 			<classpath>
  | 				<pathelement location="${classes.dir}" />
  | 			</classpath>
  | 		</javac>
  | 		<jar jarfile="${jarfile_test}/JbossTest.jar">
  | 			<fileset dir="${test_classes.dir}/">
  | 				<include name="testing/*.class" />
  | 			</fileset>
  | 		</jar>
  | 		<delete file="${jboss.deploy.dir}/JbossTest.jar" />
  | 		<copy todir="${jboss.deploy.dir}" 
  | 			  file="${jarfile_test}/JbossTest.jar" />
  | 		<!-- Jboss Config -->
  | 		<config javaHome="${java_home}" jbossHome="${jboss.base.dir}">
  | 			<server name="default" host="${node0}">
  | 				<jvmarg value="${jpda.cmdline}" />
  | 				<jvmarg value="-Xmx256m" />
  | 				<sysproperty key="java.endorsed.dirs" value="${jboss.base.dir}/lib/endorsed" />
  | 			</server>
  | 		</config>
  | 		<!-- Jboss Start -->
  | 		<start name="default"/>
  | 		<junit fork="yes"
  | 			   printsummary="yes" 
  | 			   haltonfailure="yes">
  | 			<sysproperty key="java.naming.provider.url" value="${node0.jndi.url}"/>
  | 			<classpath>
  | 			    <pathelement path="${jboss-test}"/>
  | 				<pathelement path="${jboss_testcase}" />
  | 				<path refid="compile.classpath" />
  | 			</classpath>
  | 		    <sysproperty key="jboss-junit-configuration" value="${jboss-junit-configuration}"/>
  | 			<formatter classname="org.jboss.ant.taskdefs.XMLJUnitMultipleResultFormatter" 
  | 		    	       usefile="${junit.formatter.usefile}"
  | 				       extension="-${jboss-junit-configuration}.xml" />
  | 			<formatter type="xml"/>
  | 			<test fork="yes"
  | 				  name="testing.SimpleUnitTestCase"
  | 				  haltonfailure="no">
  | 			</test>
  | 		</junit>
  | 		<!-- Jboss Stop -->
  | 		<stop name="default"/>
  | 	</target>
  |  
My JbossTestCase is the SimpleUnitTestCase.class within the 
jboss-test-1.0.0.CR1. 

The error stack:


    javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
	at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
	at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
	at javax.naming.InitialContext.addToEnvironment(InitialContext.java:474)
	at testing.SimpleUnitTestCase.testCreateSubcontext(Unknown Source)


Its the same for all 5 test cases...
For me it looks like this JbossTestCase is not executed inside the ejb container. 
Where do i have to set the link between the jboss container and the test cases??
Or how do i get the test code in my container?
I didn't find anything about this specific problem, so i started a new topic. 
I would be grateful for some help.

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3968907#3968907

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3968907



More information about the jboss-user mailing list