Bug:

The Test Script Recorder (proxy) supports filtering of url patterns before 
sending the http requests to the Recording Controller.  Just to be clear, this 
part works.  However, if we add a View Results Tree element to the Test Script 
Recorder, the View Results Tree captures all calls and completely ignores the 
filtering rules.

As a result the calls captured by Recording Controller is in consistent with 
the View Results Tree of the recorder.  This complicates the reconciliation of 
the captured tests and the recorded result tree.  Furthermore, the filter is 
use to filter out resources (e.g. jpg, css, etc.) which are quite numerous.  
The test script recorder would be easier to use and more consistent if the Test 
Script Recorder honors the filter rule when it forwards the result to the View 
Results Tree.  In other words, the Test Scripts Recorder should send the same 
output to both the Recording Controller and View Results Tree.

Fix:
ProxyControl.java

method:
public synchronized void deliverSampler(final HTTPSamplerBase sampler, final 
TestElement[] subConfigs, final SampleResult result)

changes:

move line 545 to after 536 (before 537) so that the filter rule applies to the 
notification.

The code of the line to move is:
notifySampleListeners(new SampleEvent(result, "WorkBench")); // TODO - is this 
the correct threadgroup name?

I've attached the corrected java file.  The fix is based on the v2_10 src tree.
http://svn.apache.org/viewvc/jmeter/tags/v2_10/src/protocol/http/org/apache/jmeter/protocol/http/proxy/ProxyControl.java?revision=1533926&view=markup



Thanks,
James Liang


Reply via email to