Tuesday, 14 February 2012

What is correlation

Correlation is where the script is modified so that some of the hard-coded values in the script are no longer hard-coded.
 Rather then sending the original value to the server, we may need to send different values.
 For example, the original recorded script may have included the server sending the client a session identification number, something to identify the client during that particular session.
This Session ID was hard-coded into the script during recording.
During replay, the server will send the client a new Session ID.
You need to capture this value, and incorporate it into the script so you can send it back to the server to correctly identify yourself for this new session.
If you leave the script unmodified, you will send the old hard-coded Session ID to the server.
The server will look at it and think it invalid or unknown, and so will not send the pages that have been requested.
Replaying a script with an old Session ID will not successfully fool the server into believing it is a client.
Correlation is the capturing of dynamic values passed from the server to the client and back.
You save this captured value into a parameter, and then use this parameter in the script in place of the original value.
During replay, the replay engine will now listen to what the server sends to it, and when it makes requests of the server, send this new, valid value back to the server; thus fooling the server into believing it is talking to a real client.