[Webtest] Error in Canoo with ...httpunit.ParsedHTML when using <ClickButton>

Xavier MOGHRABI webtest@lists.canoo.com
Thu, 21 Oct 2004 19:22:17 +0200


--Boundary-00=_JB/dBkulrxPjszS
Content-Type: text/plain;
  charset="us-ascii"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello

I used the latest build of Canoo (537) and I 've got an incomprehensible (for 
me) error when I click on a button. It looks for coming from HTTPUNIT.

In fact I try to post a new article in the www.LinuxFR.org website.

Here's the error. I join by the way the Canoo xml file.

[testSpec]  INFO (Step.java:233) - Start Step: null "[implict setup 
step]" (1/17)
 [testSpec]  INFO (Step.java:233) - Start Step: invoke "<unknown>" (2/17)
 [testSpec]  INFO (Target.java:144) - -> gotoTarget(by url): 
http://localhost:2000/pub
 [testSpec]  INFO (Context.java:186) - Current form set to none
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
login" (3/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
password" (4/17)
 [testSpec]  INFO (Step.java:233) - Start Step: clickbutton "Login" (5/17)
 [testSpec]  INFO (ClickButton.java:139) - Button found :Submit with 
Envoyer=Connexion
 [testSpec]  INFO (ClickButton.java:152) - -> gotoTarget(by Button): 
name=Envoyer value=Connexion
 [testSpec]  INFO (Context.java:186) - Current form set to none
 [testSpec]  INFO (Step.java:233) - Start Step: clicklink "Click to post an 
article..." (6/17)
 [testSpec]  INFO (Context.java:186) - Current form set to none
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
email" (7/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setselectfield 
"<unknown>" (8/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setselectfield 
"<unknown>" (9/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
title" (10/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
summary" (11/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield 
"<unknown>" (12/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield 
"<unknown>" (13/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setselectfield 
"<unknown>" (14/17)
 [testSpec]  INFO (Step.java:233) - Start Step: setinputfield "Set the 
message" (15/17)
 [testSpec]  INFO (Step.java:233) - Start Step: clickbutton 
"Preview..." (16/17)
 [testSpec]  INFO (ClickButton.java:139) - Button found :Submit with 
confirm=Visualiser
 [testSpec]  INFO (ClickButton.java:152) - -> gotoTarget(by Button): 
name=confirm value=Visualiser
 [testSpec] ERROR (Step.java:370) - Cannot handle unexpected exception in step 
ClickButton at /usr/local/canoo-537/submission/LinuxFR/testLFR.xml:43:  with 
(label="Visualiser", stepId="Preview...", stepType="clickbutton")
 [testSpec] java.lang.RuntimeException: Error loading included script: 
java.io.IOException
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML.getScript(ParsedHTML.java:341)
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML.interpretScriptElement(ParsedHTML.java:319)
 [testSpec]     at com.meterware.httpunit.ParsedHTML.access$700
(ParsedHTML.java:37)
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML$ScriptFactory.recordElement(ParsedHTML.java:489)
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML$2.processElement(ParsedHTML.java:702)
 [testSpec]     at 
com.meterware.httpunit.NodeUtils$PreOrderTraversal.perform(NodeUtils.java:195)
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML.loadElements(ParsedHTML.java:718)
 [testSpec]     at 
com.meterware.httpunit.ParsedHTML.getForms(ParsedHTML.java:106)
 [testSpec]     at 
com.meterware.httpunit.WebResponse$Scriptable.load(WebResponse.java:688)
 [testSpec]     at 
com.meterware.httpunit.javascript.JavaScript.load(JavaScript.java:89)
 [testSpec]     at 
com.meterware.httpunit.javascript.JavaScriptEngineFactory.load(JavaScriptEngineFactory.java:58)
 [testSpec]     at 
com.meterware.httpunit.RequestContext.runScripts(RequestContext.java:44)
 [testSpec]     at 
com.meterware.httpunit.WebWindow.getResponse(WebWindow.java:122)
 [testSpec]     at 
com.meterware.httpunit.WebWindow.sendRequest(WebWindow.java:110)
 [testSpec]     at 
com.meterware.httpunit.WebRequestSource.submitRequest(WebRequestSource.java:253)
 [testSpec]     at 
com.meterware.httpunit.WebRequestSource.submitRequest(WebRequestSource.java:232)
 [testSpec]     at 
com.meterware.httpunit.WebForm.submitRequest(WebForm.java:96)
 [testSpec]     at 
com.meterware.httpunit.WebForm.doFormSubmit(WebForm.java:107)
 [testSpec]     at com.meterware.httpunit.WebForm.submit(WebForm.java:69)
 [testSpec]     at 
com.canoo.webtest.steps.request.ClickButton.doClick(ClickButton.java:176)
 [testSpec]     at com.canoo.webtest.steps.request.ClickButton.access$1
(ClickButton.java:167)
 [testSpec]     at 
com.canoo.webtest.steps.request.ClickButton$2.call(ClickButton.java:157)
 [testSpec]     at 
com.canoo.webtest.steps.request.Target.setLastWindowResponse(Target.java:290)
 [testSpec]     at 
com.canoo.webtest.steps.request.ClickButton$1.call(ClickButton.java:155)
 [testSpec]     at 
com.canoo.webtest.steps.request.Target.protectedGoto(Target.java:104)
 [testSpec]     at 
com.canoo.webtest.steps.request.ClickButton.gotoTarget(ClickButton.java:150)
 [testSpec]     at 
com.canoo.webtest.steps.request.ClickButton.doExecute(ClickButton.java:143)
 [testSpec]     at com.canoo.webtest.steps.Step.execute(Step.java:118)
 [testSpec]     at 
com.canoo.webtest.engine.Engine.executeSteps(Engine.java:26)
 [testSpec]     at 
com.canoo.webtest.ant.TestSpecificationTask.execute(TestSpecificationTask.java:68)
 [testSpec]     at 
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
 [testSpec]     at org.apache.tools.ant.Task.perform(Task.java:364)
 [testSpec]     at org.apache.tools.ant.Target.execute(Target.java:341)
 [testSpec]     at org.apache.tools.ant.Target.performTasks(Target.java:369)
 [testSpec]     at 
org.apache.tools.ant.Project.executeTarget(Project.java:1214)
 [testSpec]     at 
org.apache.tools.ant.Project.executeTargets(Project.java:1062)
 [testSpec]     at org.apache.tools.ant.Main.runBuild(Main.java:673)
 [testSpec]     at org.apache.tools.ant.Main.startAnt(Main.java:188)
 [testSpec]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
 [testSpec]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)

BUILD FAILED
/usr/local/canoo-537/submission/LinuxFR/testLFR.xml:20: Test failed.
Exception raised: com.canoo.webtest.engine.StepExecutionException: Unexpected 
exception caught: java.lang.RuntimeException: Error loading included script: 
java.io.IOException, Step: ClickButton 
at /usr/local/canoo-537/submission/LinuxFR/testLFR.xml:43:  with 
(label="Visualiser", stepId="Preview...", 
stepType="clickbutton")com.canoo.webtest.engine.StepExecutionException: 
Unexpected exception caught: java.lang.RuntimeException: Error loading 
included script: java.io.IOException, Step: ClickButton 
at /usr/local/canoo-537/submission/LinuxFR/testLFR.xml:43:  with 
(label="Visualiser", stepId="Preview...", stepType="clickbutton")
        at 
com.canoo.webtest.steps.Step.handleUnexpectedException(Step.java:371)
        at 
com.canoo.webtest.steps.request.Target.protectedGoto(Target.java:113)
        at 
com.canoo.webtest.steps.request.ClickButton.gotoTarget(ClickButton.java:150)
        at 
com.canoo.webtest.steps.request.ClickButton.doExecute(ClickButton.java:143)
        at com.canoo.webtest.steps.Step.execute(Step.java:118)
        at com.canoo.webtest.engine.Engine.executeSteps(Engine.java:26)
        at 
com.canoo.webtest.ant.TestSpecificationTask.execute(TestSpecificationTask.java:68)
        at 
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
        at org.apache.tools.ant.Task.perform(Task.java:364)
        at org.apache.tools.ant.Target.execute(Target.java:341)
        at org.apache.tools.ant.Target.performTasks(Target.java:369)
        at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
        at org.apache.tools.ant.Main.runBuild(Main.java:673)
        at org.apache.tools.ant.Main.startAnt(Main.java:188)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)

Do you have any idea ?

Thanks for your help.

-- 
Xavier MOGHRABI - Consortium ObjectWeb
Email : xavier.moghrabi at inrialpes.fr
Phone : +33 4 76 61 55 25

--Boundary-00=_JB/dBkulrxPjszS
Content-Type: text/xml;
  charset="us-ascii";
  name="testLFR.xml"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename="testLFR.xml"

<project basedir="." name="PostPhorum" default="all" >

  <property value="${basedir}" name="base.dir" />
  <property value="/usr/local/canoo" name="webtest.home" />

  <target depends="checkANT, postmessage" name="all" />

 
<target name="postmessage">

    <testSpec name="LinuxFR">
      <config host="www.linuxfr.org"
              port="80"
              protocol="http"
              basepath="/"
              saveresponse="true" />
      <steps>
        <invoke url="pub" />
        
        <setinputfield stepid="Set the login" name="login" value="${login}" />
        <setinputfield stepid="Set the password" name="passwd" value="${password}" />
        <clickbutton stepid="Login" label="Connexion" />

        <clicklink stepid="Click to post an article..." href="/submit.html"/>
        <setinputfield stepid="Set the email" name="contact" value="http://www.objectweb.org" />
        <setselectfield name="topic" value="23"/>
        <setselectfield name="section" value="1"/>
        <setinputfield stepid="Set the title" name="title" value="${title}" />
        <setinputfield stepid="Set the summary" name="body" value="${summary}" />
        <setinputfield name="lienname1" value="Site d'ObjectWeb" />
        <setinputfield name="lienlink1" value="http://www.objectweb.org" />
        <setselectfield name="lienlang1" value="2"/>
        <setinputfield stepid="Set the message" name="article" value="${message}" />
        <clickbutton stepid="Preview..." label="Visualiser"/>

      </steps>
    </testSpec>
  </target>


  <target name="checkANT" >
    <available classname="org.apache.tools.ant.ProjectComponent" property="ant.version.ok" />
  </target>
  <target depends="checkANT" unless="ant.version.ok" name="mayPrintANTError" >
    <echo message="You have a non-compliant version of ANT" />
    <echo message="Consider moving WEBTESTHOME/lib/ant.jar" />
    <echo message="to ANT_HOME/lib." />
  </target>
  <taskdef file="${webtest.home}/webtestTaskdefs.properties" >
    <classpath>
      <pathelement path="${webtest.home}/lib" />
      <fileset includes="deploy/clover/*.jar" dir="${webtest.home}" />
      <fileset includes="lib/*.jar" dir="${webtest.home}" />
      <fileset includes="lib/base/*.jar" dir="${webtest.home}" />
      <fileset includes="lib/optional/*.jar" dir="${webtest.home}" />
    </classpath>
  </taskdef>

</project>

--Boundary-00=_JB/dBkulrxPjszS--