Tim,
greatly appreciated your solution. I tried your webtest - replacing your steps
with mine, but keeping the properties - and all I can see is that although
Canoo seems to be using the correct protocol and url, it still somehow fails on
me, resulting in this stack trace:
Unexpected exception caught: java.net.UnknownHostException
at com.canoo.webtest.steps.StepUtil.handleException(StepUtil.java:120)
at com.canoo.webtest.steps.Step.handleException(Step.java:387)
at com.canoo.webtest.steps.Step.execute(Step.java:118)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at
com.canoo.webtest.ant.TestStepSequence.executeSteps(TestStepSequence.java:43)
at
com.canoo.webtest.ant.TestStepSequence.doExecute(TestStepSequence.java:31)
at com.canoo.webtest.steps.Step.execute(Step.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at com.canoo.webtest.ant.WebtestTask.executeSteps(WebtestTask.java:236)
at com.canoo.webtest.ant.WebtestTask.execute(WebtestTask.java:208)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.Main.runBuild(Main.java:698)
at org.apache.tools.ant.Main.startAnt(Main.java:199)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Caused by: java.net.UnknownHostException: GertPauwels.server.be (fake name)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.<init>(Unknown Source)
at
com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.createSocket(Unknown Source)
at
com.gargoylesoftware.htmlunit.ssl.InsecureSSLProtocolSocketFactory.createSocket(InsecureSSLProtocolSocketFactory.java:82)
at
org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361)
at
org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at
org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at
com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:97)
at
com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1430)
at
com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1369)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:326)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:403)
at
com.canoo.webtest.steps.request.TargetHelper.getResponse(TargetHelper.java:69)
at
com.canoo.webtest.steps.request.AbstractTargetAction.getResponse(AbstractTargetAction.java:66)
at
com.canoo.webtest.steps.request.InvokePage.findTarget(InvokePage.java:160)
at
com.canoo.webtest.steps.request.AbstractTargetAction.doExecute(AbstractTargetAction.java:72)
at com.canoo.webtest.steps.Step.execute(Step.java:103)
... 57 more
--- Nested Exception ---
java.net.UnknownHostException: GertPauwels.server.be (fake name)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.<init>(Unknown Source)
at
com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.createSocket(Unknown Source)
at
com.gargoylesoftware.htmlunit.ssl.InsecureSSLProtocolSocketFactory.createSocket(InsecureSSLProtocolSocketFactory.java:82)
at
org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at
org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1361)
at
org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at
org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at
com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:97)
at
com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1430)
at
com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1369)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:326)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:403)
at
com.canoo.webtest.steps.request.TargetHelper.getResponse(TargetHelper.java:69)
at
com.canoo.webtest.steps.request.AbstractTargetAction.getResponse(AbstractTargetAction.java:66)
at
com.canoo.webtest.steps.request.InvokePage.findTarget(InvokePage.java:160)
at
com.canoo.webtest.steps.request.AbstractTargetAction.doExecute(AbstractTargetAction.java:72)
at com.canoo.webtest.steps.Step.execute(Step.java:103)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at
com.canoo.webtest.ant.TestStepSequence.executeSteps(TestStepSequence.java:43)
at
com.canoo.webtest.ant.TestStepSequence.doExecute(TestStepSequence.java:31)
at com.canoo.webtest.steps.Step.execute(Step.java:103)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at com.canoo.webtest.ant.WebtestTask.executeSteps(WebtestTask.java:236)
at com.canoo.webtest.ant.WebtestTask.execute(WebtestTask.java:208)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at
org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
at org.apache.tools.ant.Main.runBuild(Main.java:698)
at org.apache.tools.ant.Main.startAnt(Main.java:199)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
And although I see from the WebTestReport.xml that it Canoo settings are
pointing towards https, I do still see a lot of references to http in the
stacktrace...
I'm lost. Is there anything in the build.xml, webtest.xml or other file that
can keep Canoo from reaching the https site?
Gert
> Subject: RE: [Webtest] Run webtests under HTTPS - message 3
> From: [email protected]
> To: [email protected]; [email protected]; [email protected];
> [email protected]
> Date: Tue, 19 Apr 2011 12:43:44 -0700
>
> Gert,
>
> I do extensive HTTPS testing successfully with Canoo Webtest.
>
> === Start Working Example ===
>
> <?xml version="1.0"?>
> <!DOCTYPE project SYSTEM "../../dtd/Project.dtd">
> <project default="MyPmcAcl">
> <target name="MyPmcAcl">
> <webtest name="Check directory access permission results match ${user}
> permission on ${http.url.domain}">
> <config
> haltonerror="false"
> haltonfailure="false"
> useInsecureSSL="true">
> <option name="ThrowExceptionOnFailingStatusCode" value="false"/>
> <option name="ThrowExceptionOnScriptError" value="false" />
> <option name="JavaScriptEnabled" value="true" />
> <option name="autorefresh" value="true" />
> </config>
> <echo message="prerequisite pmc user: SalesExtranetXXX" />
> <echo message="prerequisite public authenticated user: not sales, modeln nor
> PM8310 NDA Audience" />
> <echo message="prerequisite sales user: SalesExtranetXXX" />
> <echo message="prerequisite modeln user: Modeln" />
> <echo message="prerequisite nda user: pm8310 NDA Audience" />
>
>
> <echo message="prerequesite protected directories:" />
>
> <invoke url="${https.url.domain}myPMC/viewprofile.pl"/>
> <setInputField name="mail" value="${user}"/>
> <setInputField name="password" value="${login.ok.password}"/>
> <clickButton name="Submit" />
> <verifyText text="Product Access" />
>
> <echo message="request sales" />
>
> <ifStep test="${sales}">
> <then>
> <invoke url="${https.url.domain}sales/"/>
> <verifyText text="NDA Central" />
> </then>
> <else>
> <invoke url="${https.url.domain}sales/"/>
> <verifyText text="Log In or Create a New Account" />
> </else>
> </ifStep>
>
> <echo message="request modeln" />
>
>
> <ifStep test="${modeln}">
> <then>
> <invoke url="${https.url.domain}modeln"/>
> <verifyText text="proxy" />
> </then>
> <else>
> <invoke url="${https.url.domain}modeln/"/>
> <verifyText text="Log In or Create a New Account" />
> </else>
> </ifStep>
>
> <echo message="request rda/pm8310/" />
>
> <ifStep test="${pm8310access}">
> <then>
> <invoke url="${https.url.domain}rda/pm8310/"/>
> <verifyText text="PM8310 TEMUX 336 Device Register Descriptions" />
> </then>
> <else>
> <invoke url="${https.url.domain}rda/pm8310/"/>
> <verifyText text="Log In or Create a New Account" />
> </else>
> </ifStep>
>
> <ifStep test="${pm4356access}">
> <then>
> <invoke url="${https.url.domain}acl/pm4356/"/>
> <verifyText text="PM4356 COMET DUAL" />
> </then>
> <else>
> <invoke url="${https.url.domain}acl/pm4356/"/>
> <verifyText text="Log In or Create a New Account" />
> </else>
> </ifStep>
>
> <ifStep test="${pm4357access}">
> <then>
> <invoke url="${https.url.domain}acl/pm4357/"/>
> <verifyText text="PM4357 COMET SINGLE" />
> </then>
> <else>
> <invoke url="${https.url.domain}acl/pm4357/"/>
> <verifyText text="Log In or Create a New Account" />
> </else>
> </ifStep>
>
>
> </webtest>
> </target>
> </project>
>
> === End Working Example ===
>
> Here is the property file. I specify http for the target url but our server
> automatically redirects to https. You may wish to specify your target domain
> as https://your.target.domain/
>
> === Start Property File ===
>
> test.url=http://www.pmc-sierra.com/myPMC/
> test.url.domain=https://www.pmc-sierra.com/
> https.url.domain=https://www.pmc-sierra.com/
> http.url.domain=http://www.pmc-sierra.com/
> https.service=true
>
> === End Property File ===
>
> I hope that helps.
>
> Cheers,
>
> Tim Pezarro
> Manager, Web Services
> Corporate Marketing
> [email protected]
> Phone: +1-604-415-6044
> Cell: +1-604-762-1000
> Fax: +1-604-415-6602
> PMC-Sierra, Inc.
> 8555 Baxter Place
> Burnaby, BC, Canada
> V5A 4V7
>
>
>
> -----Original Message-----
> From: [email protected] on behalf of Thomas Klein
> Sent: Fri 4/15/2011 12:42 AM
> To: [email protected]; Gert Pauwels
> Subject: RE: [Webtest] Run webtests under HTTPS - message 3
>
> Hi Gert,
>
> perhaps this helps?
> http://old.nabble.com/https-support-by-Canoo-Webtest.-td23153265.html
>
> If not then you may also google for HTTPS and "htmlunit" since its WebTests
> underlying engine for HTTP(S)...
> Sorry I have no working solution at hand.
>
> Cheers,
> Thomas
>
>
> Thomas Klein
> Manager QA | SapientNitro
>
>
>
> _______________________________________________
> WebTest mailing list
> [email protected]
> http://lists.canoo.com/mailman/listinfo/webtest