Hello,
yes Marc, to validate the original response is exactly what i want. Thanks
for the answer, but i allways get the error message:
Exception
groovy.lang.MissingMethodException
Message
No signature of method
com.gargoylesoftware.htmlunit.WebResponseImpl.contentAsString() is
applicable for argument types: () values: {}
I use the 2.5 version of webtest, so i think i have to update canoo webtest.
Thanks,
Dariusch
Marc Guillemot wrote:
>
> If you get
>
>> Exception
>> groovy.lang.MissingMethodException
>> Message
>> No signature of method
> com.gargoylesoftware.htmlunit.xml.XmlPage.asXml() is
>> applicable for argument types: () values: {}
>
> this means that the content of your current page is not html but xml. Is
> it really what you expected?
>
> More generally, I doesn't make so much sense to validate the html
> generated by HtmlPage.asXml() as it is already the result of a parse
> operation with tag balancing, etc. It would make more sense to check the
> original response from the server that can be accessed with
> step.context.currentResponse.webResponse.contentAsString
>
> Cheers,
> Marc.
> --
> Blog: http://mguillem.wordpress.com
>
>
> dariusch wrote:
>> Hi,
>>
>> if i use these code snippel:
>>
>> <groovy description="Store the html of the page">
>> def document = step.context.currentResponse.asXml()
>> def props = step.getWebtestProperties( step.PROPERTY_TYPE_DYNAMIC )
>> ;
>> props.putAt("htmlPage",document)
>> </groovy>
>>
>> i get this error message:
>>
>> Exception
>> groovy.lang.MissingMethodException
>> Message
>> No signature of method com.gargoylesoftware.htmlunit.xml.XmlPage.asXml()
>> is
>> applicable for argument types: () values: {}
>>
>> Is htmlPage a dynamic property? I saw something here:
>>
>> http://www.nabble.com/getting-started-tt16373515.html#a16545352
>>
>> But it dosen't work.
>>
>> Thanks,
>> Dariusch
>>
>>
>>
>>
>>
>> dariusch wrote:
>>> Hi,
>>>
>>> if i use value="#{htmlPage}", inside the inputField is the string
>>> #{htmlPage} and not the html code.
>>>
>>> so this solution dosen't work!
>>>
>>> Dariusch
>>>
>>>
>>> Florent Blondeau wrote:
>>>> Hi Dariusch,
>>>>
>>>> if i use these groovy steps, where are the html code, inside the
>>>> document
>>>> property?
>>>>
>>>> Nope, it should be in the htmlPage property, so your code should be :
>>>>
>>>> <setInputField description='set textarea with feeds'
>>>> htmlId='fragment'
>>>> value="#{htmlPage}"/>
>>>>
>>>> Florent
>>>>
>>>> Pingwy
>>>> 27, rue des arènes
>>>> 49100 Angers
>>>>
>>>>
>>>>
>>>> dariusch a écrit :
>>>>> Hello,
>>>>>
>>>>> if i use these groovy steps, where are the html code, inside the
>>>>> document
>>>>> property?
>>>>> I will do this:
>>>>>
>>>>> groovy(description:"Store the html of the page","""
>>>>> def document = step.context.currentResponse.asXml()
>>>>> def props = step.webtestProperties
>>>>> props.putAt("htmlPage",document)
>>>>> """)
>>>>> <invoke description="goto W3C page"
>>>>> url="http://validator.w3.org/#validate_by_input" />
>>>>> <setInputField description='set textarea with feeds'
>>>>> htmlId='fragment'
>>>>> value="#{document}"/>
>>>>> <clickButton description="Submit the simple feedvalidation"
>>>>> xpath="//[EMAIL PROTECTED]'validate-by-input']//[EMAIL
>>>>> PROTECTED]'Check']"/>
>>>>>
>>>>> I think, to set the value inside setInputField over the #{document} is
>>>>> not
>>>>> correct.
>>>>>
>>>>> What is my mistake?
>>>>>
>>>>> Thanks,
>>>>> Dariusch
>>>>>
>>>>>
>>>>>
>>>>> Florent Blondeau wrote:
>>>>>
>>>>>> Hi Dariusch,
>>>>>>
>>>>>> You can get the html via a groovy step
>>>>>>
>>>>>> groovy(description:"Store the html of the page","""
>>>>>> def document =
>>>>>> step.context.currentResponse.asXml()
>>>>>> def props = step.webtestProperties
>>>>>> props.putAt("htmlPage",document)
>>>>>> """)
>>>>>>
>>>>>> or
>>>>>> <groovy description="Store the html of the page">
>>>>>> def document =
>>>>>> step.context.currentResponse.asXml()
>>>>>> def props = step.webtestProperties
>>>>>> props.putAt("htmlPage",document)
>>>>>> </groovy>
>>>>>> in a less groovy way...
>>>>>>
>>>>>> Then you have your html code (cleaned up with Tidy) in the htmlPage
>>>>>> property
>>>>>>
>>>>>> Hope that helps
>>>>>>
>>>>>> Florent
>>>>>>
>>>>>> Pingwy
>>>>>> 27, rue des arènes
>>>>>> 49100 Angers
>>>>>>
>>>>>>
>>>>>>
>>>>>> dariusch a écrit :
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> if i use storexpath with ='/', i get the text without the elements,
>>>>>>> but i
>>>>>>> need all.
>>>>>>>
>>>>>>> Someone has an idea?
>>>>>>>
>>>>>>> Dariusch
>>>>>>>
>>>>>>>
>>>>>>> dariusch wrote:
>>>>>>>
>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> i just want to store all source code from a response page. It is
>>>>>>>> possible
>>>>>>>> to do that (inside a variable)? I need this, because i will check
>>>>>>>> these
>>>>>>>> sources it is valid (the page is an rss-feed).
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Dariusch
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
> _______________________________________________
> WebTest mailing list
> [email protected]
> http://lists.canoo.com/mailman/listinfo/webtest
>
>
--
View this message in context:
http://www.nabble.com/How-to-store-the-source-code-from-a-response-page.-tp16297922p16718687.html
Sent from the WebTest mailing list archive at Nabble.com.
_______________________________________________
WebTest mailing list
[email protected]
http://lists.canoo.com/mailman/listinfo/webtest