Hi all,
        The last few days I've committed a bunch of code.  It essentially 
boils down to two things: 

1. The proxy server is now integrated with JMeter's UI.  There is 
documentation about how to use it (/docs/user_manual/proxy_server.html).

2. I've made a new type of SamplerController called a ModificationManager.  
The modification manager takes Modifier and ResponseBasedModifier objects as 
config elements which allow it to act as a filter for any Entry object that 
passes through it.  The ModificationManager is itself a listener to the 
testing engine, so it receives SampleResult objects, and this allows the 
ModificationManager to use the response text from the server to modify the 
Entry objects that pass through.  I've made one ResponseBasedModifier that 
parses HTML using JTidy for anchor tags and for forms.  It will use this 
information to modify UrlConfig test samples that come through, treating the 
data within the UrlConfig object as regular expressions.  It's a little 
complicated, and I will put together some documentation soon for it, but it 
allows a user to tell JMeter how to react to the server response.  

Additionally, this also provides a nice framework for other Modifier objects. 
 Jamie Davidson is one developer I know of who has created such things to 
generate test samples on the go - sometimes using random data to fill in 
UrlConfig objects.  This framework would allow such a developer to simply 
create a Modifier implementing class (use 
org.apache.jmeter.protocol.http.modifier.AnchorModifier as an example) and 
immediately put it to use.  Not that AnchorModifier extends 
AbstractConfigElement, because that's the easiest way to get all the extra 
goodies we want from JMeter components (saveable, automatic integration with 
the UI, etc).

So check it out and play around.  I will try to generate some example .jmx 
files to demonstrate how I see this functionality being used.

-- 
Mike Stover
[EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to