jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Mouawad <philippe.moua...@gmail.com>
Subject Re: Issues 52618 and 52674
Date Wed, 29 Feb 2012 15:26:07 GMT
Hello,
To clarify a little bit what this enhancement brings:

Today the Proxy can record standard HTTP sessions that are textual, see the
Mail of 6 feb 2012
"It was designed for recording standard HTTP sessions; these are not binary"
And particularly Issue 49039


Although it is limited to Textual HTTP Sessions, lot of work in it can be
reused to record AMF Sessions , Silverlight sessions or other binary
protocols.

The idea behind the enhancement is to propose the following:

   - Plugin implementor will be able by implementing a SampleCreator
   subclass to reuse 90% of proxy feature without duplicating lot of code:
      - All Header work
      - Sampler transmission to a Target once it's created ,
      - ie, all the work done in patched HttpRequestHdr which is big + the
      ability to customize each of the methods in DefaultSamplerCreator (as
      Struts Base class was build for example)

Another idea is to be able to customize the created Sampler, a direct use I
see is for example is during a recording of a JSON, GWT or REST protocols,
I as a user had to go on each sampler after recording and switch to RAW
POST BODY (which means 40 clicks for 20 samplers), with current
enhancement  I can just subclass DefaultSamplerCreator and register it for
GWT Content type and just set the property to switch it to RAW POST BODY.

Hope it's clearer.
Regards
Philippe

Today the Proxy feature can only be used to record HTTP Textual

On Sun, Feb 26, 2012 at 9:04 PM, Philippe Mouawad <
philippe.mouawad@gmail.com> wrote:

> Hello,
> I submitted a patch for 52674<https://issues.apache.org/bugzilla/show_bug.cgi?id=52674>
> Hope you can have a look at it soon.
>
> I didn't update Tests yet, if you think it's OK then I will update them.
>
> Regards
> Philippe
>
>
> On Wed, Feb 15, 2012 at 11:30 PM, Philippe Mouawad <
> philippe.mouawad@gmail.com> wrote:
>
>> Hello Sebb, Milamber, Rainer,
>> Did you have time to look at:
>>
>>    - 52618 <https://issues.apache.org/bugzilla/show_bug.cgi?id=52618>
>>
>> Do you think patch should be applied ?
>>
>>
>> Also I would like to have your opinion regarding :
>>
>>    - 52674 <https://issues.apache.org/bugzilla/show_bug.cgi?id=52674>
>>
>> I started an implementation, should I provide a patch or commit it
>> directly ?
>>
>> My idea is the following:
>>
>>    - Either introduce 2 interfaces:
>>
>>
>>    1. SamplerFactory with following method:
>>          1. createSampler(String contentType) => Called in
>>          HttpRequestHdr#getSampler()
>>       2. SamplerCustomizer with following method:
>>          1. customizeSampler(HttpSamplerBase sampler) => Called in
>>          HttpRequestHdr#getSampler()
>>          2. fillBody(byte[] rawPostBody) => Called in
>>          HttpRequestHdr#getSampler()
>>
>>
>>    - Or introduce only one SamplerProvider:
>>       - createSampler(String contentType) => Called in
>>       HttpRequestHdr#getSampler()
>>       - customizeSampler(HttpSamplerBase sampler) => Called in
>>       HttpRequestHdr#getSampler()
>>       - fillBody(byte[] rawPostBody) => Called in
>>       HttpRequestHdr#getSampler():
>>          - Default implementation would do what is done today inside if
>>          ((!HTTPConstants.CONNECT.equals(getMethod())) &&
>>          (!HTTPConstants.GET.equals(method))) {
>>          - Other protocols would handle it another way
>>
>> --
>> Regards.
>> Philippe Mouawad.
>>
>>
>>
>>
>
>
> --
> Cordialement.
> Philippe Mouawad.
>
>
>
>


-- 
Cordialement.
Philippe Mouawad.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message