Hi Sebb and Philippe,

Thank you very much for helping me out with this issue.


Let me first address the main issue that I see and then your suggestions 
further below.

I think a fundamental design guideline that is important to adhere to is this:  

Debug aids should not interfere with correct application behavior.  Otherwise 
the system will have obscure landmines that can be very painful.  Just imagine 
what if your java debugger have the same problem...

Unfortunately, the Debug PostProcessor breaks this rule.  Maybe one simple fix 
is to get rid of the DebugPP.  Instead, add a debug tab to the View Results 
Tree listener.  The debug tab will display the Sampler Properties and 
JmeterVariables.


Regarding your suggestions: 

1) Use Debug Sampler instead:

The problem with the Debug Sampler is that it is not a preprocessor; it is a 
sampler.  As such I have to manually add it before every sampler.  I have a 
bunch of long test scenarios which make this tedious.  By using the Debug 
PostProcessor, I just need to add one inside the Thread Group and it gets 
invoked after every sampler.  

Also, I wouldn't be surprise if the regex extractors also works on Debug 
Sampler output as well.  If so, we'll end up with the same problem.


2) Reordering the DebugPP to the end:

Here is the hierarchy of my test.  Notice the Debug PP is already at the 
bottom.  


Thread Group
-- http request sampler A
-- While Controller
---- http request sampler B
------ regex extractor
-- Debug Post Processor

I've also tried moving Debug PP to in front of "http request sampler A" and the 
test still doesn't work.  




Thanks,
James Liang



-----Original Message-----
From: sebb [mailto:[email protected]] 
Sent: Monday, December 09, 2013 2:16 AM
To: [email protected]
Subject: Re: Debug PostProcessor output interfere with Regular Expression 
Extractor

Why are you using the PostProcessor?

I would have thought the Debug Sampler would have been more suitable, and that 
can be added after the sampler to which the Regex is attached. This guarantees 
it is after the Regex PP runs.

As already suggested, ensuring the Debug PP is last should also help - in fact, 
without doing that, surely it won't show the result of of the Regex PP?

On 8 December 2013 19:28, Philippe Mouawad <[email protected]> wrote:
> Hello,
> What if you put Debug Post Processor as last child of parent ?
> Regards
> Philippe
>
> On Sunday, December 8, 2013, James Liang wrote:
>
>> Hi,
>>
>>
>> I've setup a Regular Expression Extractor to handle Main sample and 
>> sub-samples.  This is necessary to handle any redirects.  I also 
>> added a Debug Postprocessor to help troubleshoot.  Because the Debug 
>> PostProcessor automatically becomes a sub-sample of a samplers, the 
>> Regular Expression Extractor automatically included the Debug 
>> PostProcessor output in the extraction!  In this setup, the Regular 
>> Expression Extractor includes both the normal response from the web server 
>> and debug info!
>>
>> This bug has caused me more than a day to track down.
>>
>> Couple of suggestions:
>>
>>
>> 1)      Since the Debug PostProcessor is a special processor for debugging
>> only, its output should not have been included in the Regular 
>> Expression Extractor.
>>
>> 2)      It would be very helpful if the document on the Debug
>> PostProcessor has a warning on this serious side effect.
>>
>>
>> http://jmeter.apache.org/usermanual/component_reference.html#Debug_Po
>> stProcessor
>>
>>
>>
>> Thanks,
>> James Liang
>>
>>
>>
>
> --
> Cordialement.
> Philippe Mouawad.

Reply via email to