Hi,
 
I am getting the following errors for my first cactus test case and i don't know whats going on.
 
I am using jboss4 which i start manually and i have placed the jar files and tdstest.war into the deployment directory.
 
This is probably something simple like a classpath problem but i have no idea.
 
===============================================
test:
   [cactus] Testsuite: tds.tests.UserValidatorTest
   [cactus] Tests run: 1, Failures: 0, Errors: 1, Time elapsed: 0.313 sec
   [cactus] Testcase: testValidation(com.cmcrc.tds.tests.UserValidatorTest):    Caused an ERROR
   [cactus] org.apache.commons.httpclient.HttpMethod.setRequestHeader(Ljava/lang/String;Ljava/lang/String;)V
   [cactus] java.lang.NoSuchMethodError: org.apache.commons.httpclient.HttpMethod.setRequestHeader(Ljava/lang/String;Ljava/lang/String;)V
   [cactus]     at org.apache.cactus.client.connector.http.HttpClientConnectionHelper.dispatch50_connect(HttpClientConnectionHelper.java;org/apache/cactus/util/log/LogAspect.aj[1k]:152)
   [cactus]     at org.apache.cactus.client.connector.http.HttpClientConnectionHelper.around50_connect(HttpClientConnectionHelper.java;org/apache/cactus/util/log/LogAspect.aj[1k]:1240)
   [cactus]     at org.apache.cactus.client.connector.http.HttpClientConnectionHelper.connect(HttpClientConnectionHelper.java;org/apache/cactus/util/log/LogAspect.aj[1k]:114)
   [cactus]     at org.apache.cactus.client.connector.http.DefaultHttpClient.callRunTest(DefaultHttpClient.java;org/apache/cactus/util/log/LogAspect.aj[1k]:201)
   [cactus]     at org.apache.cactus.client.connector.http.DefaultHttpClient.dispatch49_doTest(DefaultHttpClient.java;org/apache/cactus/util/log/LogAspect.aj[1k]:119)
   [cactus]     at org.apache.cactus.client.connector.http.DefaultHttpClient.around49_doTest(DefaultHttpClient.java;org/apache/cactus/util/log/LogAspect.aj[1k]:1240)
   [cactus]     at org.apache.cactus.client.connector.http.DefaultHttpClient.doTest(DefaultHttpClient.java;org/apache/cactus/util/log/LogAspect.aj[1k]:115)
   [cactus]     at org.apache.cactus.internal.client.WebClientTestCaseDelegate.runWebTest(WebClientTestCaseDelegate.java;org/apache/cactus/util/log/LogAspect.aj[1k]:334)
   [cactus]     at org.apache.cactus.internal.client.WebClientTestCaseDelegate.runGenericTest(WebClientTestCaseDelegate.java;org/apache/cactus/util/log/LogAspect.aj[1k]:282)
   [cactus]     at org.apache.cactus.internal.client.WebClientTestCaseDelegate.runTest(WebClientTestCaseDelegate.java;org/apache/cactus/util/log/LogAspect.aj[1k]:258)
   [cactus]     at org.apache.cactus.ServletTestCase.runTest(ServletTestCase.java:289)
   [cactus]     at org.apache.cactus.ServletTestCase.runBare(ServletTestCase.java:251)
 
===============================================
cactus.properties:
 
cactus.contextURL = http://localhost:8080/tdstest
 
===============================================
 
<web-app>
    <servlet>
      <servlet-name>ServletRedirector</servlet-name>
      <servlet-class>org.apache.cactus.server.ServletTestRedirector</servlet-class>
    </servlet>
 
    <servlet>
      <servlet-name>ServletTestRunner</servlet-name>
      <servlet-class>org.apache.cactus.server.runner.ServletTestRunner</servlet-class>
    </servlet>
    <servlet-mapping>
      <servlet-name>ServletRedirector</servlet-name>
      <url-pattern>/ServletRedirector</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
      <servlet-name>ServletTestRunner</servlet-name>
      <url-pattern>/ServletTestRunner</url-pattern>
    </servlet-mapping>
    <ejb-local-ref>
      <ejb-ref-name>ejb/user/UserValidator</ejb-ref-name>
      <ejb-ref-type>Session</ejb-ref-type>
      <local-home>tds.interfaces.UserValidatorLocalHome</local-home>
      <local>tds.interfaces.UserValidatorLocal</local>
      <ejb-link>TDS.jar#user/UserValidator</ejb-link>
    </ejb-local-ref>
</web-app>
===============================================
build.xml
 
<target name="test.prepare" depends="dist, compile.cactus">
 
    <!-- Cactify the web-app archive -->
    <cactifywar srcfile="${dist.dir}/${ant.project.name}.war"
        destfile="${dist.dir}/tdstest.war"
        mergewebxml="${src.webapp.dir}/WEB-INF/cactus-web.xml">
      <classes dir="${build.classes.dir}">
        <include name="**/tests/**" />
        <exclude name="/webapp"/>
      </classes>
      <!-- <lib file="${httpunit.jar}"/> -->
    </cactifywar>
    <!-- Prepare the directories for the JUnit reports -->
    <mkdir dir="${build.testreports.dir}"/>
   
    <ear destfile="${dist.dir}/tds.ear" appxml="${resources.dir}/ear/META-INF/application.xml">
      <fileset dir="${dist.dir}" includes="*.jar,*.war"/>
    </ear>
 
  </target>
  <!-- depends="test.prepare" -->
  <target name="test" depends="test.prepare"
      description="Run the tests on the defined containers">
    <!-- Run the tests -->
    <cactus warfile="${dist.dir}/tdstest.war" fork="yes"
        failureproperty="tests.failed">
      <classpath>
        <path refid="classpath"/>
        <pathelement location="${build.classes.dir}"/>
        <pathelement location="${resources.dir}/properties"/>
      </classpath>
      <!--
      <containerset>
        <generic name="jboss4">
          <startup target="jboss.start"/>
          <shutdown target="jboss.stop"/>
        </generic>
      </containerset>
      -->
     
      <formatter type="brief" usefile="false"/>
      <formatter type="xml"/>
           
      <batchtest>
        <fileset dir="${src.dir}">
          <include name="**/tests/*Test*.java"/>
          <exclude name="**/tests/Test*All.java"/>
        </fileset>
      </batchtest>
     
    </cactus>
    <!-- Generate the JUnit reports
    <junitreport todir="${build.testreports.dir}">
      <fileset dir="${target.testreports.dir}"
          includes="TEST-*.xml"/>
      <report todir="${target.testreports.dir}"
          format="frames"/>
    </junitreport>
     -->
    <fail if="tests.failed">At least one test failed!</fail>
  </target>
===============================================
 
thanks


Want to chat instantly with your online friends?�Get the FREE Yahoo! Messenger

Reply via email to