top of page

Overview

 

Associating a value to a parameter is a point-and-click operation where seven parameter types can be associated with name-value pairs and automatically parameterised by the Process Raw operation.

 

The Process Raw operation extracts name-value pairs from the raw script and presents them on a green form titled Parameter Association Form.

​

It also reads the seven parameter types from the test case and/or the Solution document and presents them on the same green Parameter Association Form.

​

The scripter is then expected to manually associate them.

​

When associated, the Process Raw operation parameterises the selected name-value pairs and optionally appends a comment to that line with the original value.

 

The seven types of parameter are:

 

In addition to the association function, the green Parameter Association Form provides other functions such as:

  • The ability to add and/or delete rules from the test case;

  • The ability to modify the documented rule before associating it with a value;

  • The ability to configure a parameter based on its documented rule without having to associate it with a value (Configure only);

  • The ability to associate a parameter with a value using the same rules that determined the value (Associate by boundary);

  • The ability to associate all values irrespective of the rules used to select those values (Associate by value).

 

 

How it works - Summary

 

As mentioned above, this form facilitates the association of values to seven types of parameter.

 

The Process Raw operation collects name-value pairs from the raw script and presents them to the scripter. The illustration below shows a typical request from a raw script and which name-value pairs are collected.

​

aHowItWorks01.gif

 

The illustration below shows the first 11 name-value pairs from a typical raw script in the left hand pane. Some of those in the illustration above can be seen.

​

 

 Using experience, the scripter identifies which name-value pairs should be associated with which parameters from the       seven lists in the right hand pane.

 

When an item from the left pane and the right pane is selected, the association is completed by pressing either the Associate by value or the Associate by boundary button.

 

The association is added to the bottom pane and removed from the above two panes.

 

​

Continue associating until complete, then press the Apply button.

​

bHowItWorks02.gif

 

The bottom pane in the illustration below shows the first 11 associated name-value pairs.

​

cHowItWorks03.gif

 

The illustration below shows the request illustrated above after the Process Raw operation has updated it with the scripter's associations.

​

dHowItWorks04.gif

 

Iteration parameters are assigned the associated values at the top of Action.c as shown in the illustration below. The scripter is expected to manually apply functions as appropriate, or move the assignment to a more appropriate position in the script.

​

eHowItWorks05.gif

 

If a Text Data File parameter is associated with a value, the Process Raw operation looks for it in the Included Files folder. If it's there, it is copied into the script's folder. Otherwise is creates a new, skeleton, file in the script's folder.

​

fHowItWorks06.gif

 

In addition to replacing the associated value with the parameter in the script, associating a LoadTest Database parameter triggers the Process Raw operation to do the following:

​

  1. Copy four files from the Included Files folder and instrument the script with them (MySQL.c, Regex.c, mySQL.dll, and pcre3.dll);

  2. Create a new DatabaseOperations.c file containing the InitialiseDatabase() function and skeleton functions based on the rules in the test case document;

  3. Insert the call to the InitialiseDatabase() function in vuser_init.c;

  4. Insert #define statements at the top of vuser_init.c

​

gHowItWorks07.gif

 

If any Test Account parameter is associated with a value, the Process Raw operation creates a new test account text file called pUserID.dat and populates it with the contents of the table from the test case.

​

The pUserID parameter is mandatory and is configured with the operation of Unique / Once, which must be manually changed if it is not appropriate.

NameValuePairs
hHowItWorks08.gif

 

Name-value pairs

 

Identification of name-value pairs in a raw script

 

As a part of processing a raw script, the DoxRunner application collects name-value pairs from the script files.

 

There are two formats targeted for collection as illustrated below.

​

The first format can be found within many script function attributes such as Action=, URL=, and Referer=. The name-value pairs for this format are separated from each other by any combination of ampersands (&), question marks (?), and semi-colons (;), or terminated by a quote.

Format: <name>=<value>;<name>=<value>?<name>=<value>&<name>=<value>&<name>=<value>"

​

The second format can be found in the ITEMDATA section of LR functions such as web_submit_data or web_submit_form.

Format: "Name=<name>", "Value=<value>", ENDITEM,

​

Identification
iAttribuePairs01.gif
Presentation

 

Presentation to the scripter

 

The DoxRunner application sorts the name-value pairs defined above and presents them to the scripter in the left hand pane as shown below.

 

Some name-value pairs are collected but not displayed as described in the next section.

 

jAttribuePairs02.gif
RestrictingValues

 

Attribute name-value pairs that are not displayed

 

In order to reduce the "noise" of attribute-pairs presented (especially where there are a large number of them), two tactics are used.

 

Manually excluded

 

Sometimes a script has lots of name-value pairs that are clearly not suitable for associating with a parameter. Removing the irrelevant ones from the list makes it easier to identify those that should be. Select an irrelevant one, then press the Remove from display button.

​

If you make a mistake, simply press the Restore display button to re-display them.

ManuallyExcluded

 

Short values excluded

 

By default, attributes with values of fewer than three characters are not displayed. This is because short values require more care when associating them.

​

Occasionally there will be some that are one or two characters long. To display them, simply uncheck the "Limit values to..." option as shown above.

 

On the other hand sometimes it may be easier to restrict those displayed even further. If so, simply change the number from 3 to whatever suits your assessment.

ShortValues

 

Automatically excluded

 

The following name-value pairs are automatically excluded from those displayed:

  • If the value is the target of a Correlation Rule or a Global Parameter rule

  • If the value is empty

  • If the option to remove Referrer attributes is selected, the name-value pairs in them are ignored

  • If the option to remove cookies is selected, the name-value pairs in them are ignored

  • If the option to remove EXTRARES attributes is selected, the name-value pairs in them are ignored

 

For example, in the illustration above, the three values with name j_salt, SEC_SESSTOKEN, and path will most likely be the target of a Correlation Rule. If so, they are not  presented to the scripter for associating with a parameter.

 

Also in the illustration above the value with name sap-nwbc-action_url is empty, so it is excluded also.

​

The corollary to this is that if you see a name-value pair listed that should be correlated, then this is a trigger for you to review the correlation rules for it.

AutomaticallyExcluded

 

Expand selected name-value pair

 

The unassociated name-value pairs pane is a fixed size with limited horizontal scrolling. Some names and some values may be longer than those shown. To see them press the Expand values button. The illustration below shows the dialog box that allows you to focus on one name-value pair at a time. Use the arrows to step through the name-value pairs one at a time. Press the Select button to select the one displayed.

​

For applications such as SAP and Dynamics CRM, some names and values may be encoded and difficult to interpret. If the Performance Test Support application is able to detect these and decode them, it will display the decoded versions below the original versions, as shown in the second illustration below (which illustrates a SAPEVENTQUEUE attribute).

 

ExpandSelected
kExpandSelected01.gif

​

The illustration below shows an expanded decoded name-value pair when a SAPEVENTQUEUE attribute is detected.

 

lExpandSelected02.gif
ParameterPanes

 

Parameter panes

​

The six tabs on the top right hand pane represent the documented rules that are to be parameterised. Typically they will be associated with the Name-Value Pairs on the left by the scripter, but there are more options available as shown in the following sections.

​

CustomParameterPane

​

Custom parameters

 

The following Custom Parameter operations are available from the green Parameter Association form:

  • Associate a Custom Parameter with the documented value, or a value typed in;

  • Associate a Custom Parameter with a value from the raw version of the script (displayed on the left hand pane titled "Unassociated name-value pairs");

  • Add a Custom Parameter to the test case;

  • Delete a Custom Parameter from the test case.

 

When a Custom Parameter from the top right-hand pane is selected, the three controls at the bottom of the pane are populated:

​

If a Description was documented, it can be viewed by moving the horizontal scroll bar or by pressing the Help button.

​

If the Copy button is displayed, then another name-value pair was detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

​

Custom01.gif
TextDataFileParameterPane

 

Text data file parameters

 

This pane displays the contents of the Text Data File parameters section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

This pane displays the documented Text Data File parameters as illustrated below. When selected, the three controls at the bottom of the pane are populated:

​

If a Description was documented, it can be viewed by moving the horizontal scroll bar or by pressing the Help button.

​

The following operations are available from the green Parameter Association screen:

  • Associate a Text Data File Parameter with a value from the raw version of the script;

  • Add a Text Data File Parameter to the test case;

  • Delete a Text Data File Parameter from the test case.

​

If the Copy button is displayed, then another name-value pair was detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

TextDataFile.gif
LoadTestDatabaseParameterPane

 

LoadTest Database parameters

 

This pane displays the contents of the LoadTest database section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

DateTimeParameters
LoadTestDatabse.gif

 

Date/Time parameters

 

This pane displays the contents of the LoadTest database section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

AdditionalAttributes
DateTime.gif

 

Additional Attribute parameters

 

This pane displays the contents of the LoadTest database section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

RandomNumber
AdditionalAttributes.gif

 

Random Number parameters

 

This pane displays the contents of the LoadTest database section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

VTS
Random.gif

 

Virtual Table Server (VTS) parameters

 

This pane displays the contents of the LoadTest database section of the test case. Select any of one these and any one name-value pair, then press either the Associate by value or the Associate by boundary button to associate them. Only choose the Associate by value button if you believe that the value will be unique throughout the script.

​

If the Copy button is displayed, then another name-value pair has been detected with the same value and is highlighted in the left hand pane. Assess whether the highlighted name-value pair should be parameterised with the selected parameter name too and, if so, press the Copy button.

 

Operations
VTS.gif

 

Parameter Association Operations

 

Help

​

All four parameter types can be defined in the respective section of the test case with a Description column. This column is to document anything that a scripter needs to do to be able to configure the parameter properly. When one of the parameter names is selected in one of the right hand panes, the Help button becomes enabled. Pressing it will display the appropriate Description in the left hand pane.

 

Help
wHelp.gif
ConfigureOnly
AssociateByValues

 

Associate by values

 

The Performance Test Support application collects the name-value pairs based on various boundary rules. However it may be the case where all occurrences of the value should be parameterised, not just those based on the boundary. Pressing this button achieves that.

​

However it may not be safe, especially for short values. Press this button only if you know the value to be unique throughout all script files. Otherwise press the Associate by boundary button described below and manually parameterise those values that aren't automatically parameterised.

​

 

Associate by values

 

The Performance Test Support application collects the name-value pairs based on various boundary rules. However it may be the case where all occurrences of the value should be parameterised, not just those based on the boundary. Pressing this button achieves that.

​

However it may not be safe, especially for short values. Press this button only if you know the value to be unique throughout all script files. Otherwise press the Associate by boundary button described below and manually parameterise those values that aren't automatically parameterised.

​

AssociateByBoundary

 

Associate by boundary

 

The Performance Test Support application collects the name-value pairs based on various boundary rules. Pressing this button ensures that the same rules are applied when assigning the value to a parameter. This is the safest method, especially for short values.

​

However, although safe, it may be the case where some values should always be assigned to a parameter regardless of the boundary rules. In this case consider using the Associate by value button, described above, but only use it if you believe the value is unique. 

 

Copy

 

Copy an association

 

When you associate a name-value pair with a parameter, a search of the remaining name-value pairs is done and if a value equal to the selected name-value pair is detected, an option to include that into the same association is presented via a Copy button.

​

For example:

​

vCopy.gif
Disassociate

 

Disassociate

 

Use this button if you made a mistake when associating a parameter. Select the associated item in the bottom pane, then press this button. The associated parameter and its associated name-value pair are restored and the mistake is rectified.

 

AddToDocument

 

Add to document

 

If a name-value pair is noticed that should be parameterised, but the appropriate rule doesn't appear in any of the four parameter panes on the right, then it wasn't defined in the test case. You could abort the operation and manually add it to the test case, but it can be added within the green form, which is easier.

​

First decide which of the four parameter types it should be defined in, open the appropriate tab, and type its details in the text boxes at the bottom.

​

Each parameter tab is described separately - follow the links:

1. Iteration Parameter

2. Text Data File Parameter

3. LoadTest Database Parameter

4. Test Account Parameter

​

Go here to delete one of these parameter rules from the test case document.

AddCustomParameter

​

Adding a new Custom parameter

​

If you recognise a name-value pair that should be parameterised as an iteration parameter, but a relevant parameter name isn't listed in the iteration parameter pane, then you can add a new one by typing it in the text box as shown below.

​

It will be added to the iteration parameter section of the test case when the Process raw operation is complete and it will be added to the Iteration parameter section of the test case, with Description "Added new".

 

AddTextDataFileParameter

​

Adding a new Text Data File parameter

​

If you recognise a name-value pair that should be parameterised as a text data file parameter, but a relevant parameter name isn't listed in the Text Data pane, then you can add a new one by typing it in the text box as shown below.

​

It will be added to the Text Data File parameter section of the test case when the Process raw operation is complete and it will be added to the Text Data File parameter section of the test case, with Description "Added new".

 

​

Adding a new LoadTest Database parameter

​

If you recognise a name-value pair that should be parameterised as text data file parameter, but a relevant parameter name isn't listed in the LoadTest Database pane, then you can add a new one by typing it in the text box as shown below.

​

It will be added to the LoadTest Database parameter section of the test case when the Process raw operation is complete and it will be added to the LoadTest Database parameter section of the test case, with Description "Added new".

 

AddLoadTestDatabaseParameter
DeleteFromDocument

 

Delete from document

 

Sometimes there are one or two parameters defined in the test case and presented in one of the four parameter panes but cannot be assigned to a name-value pair, and never will be. They should be deleted from the test case. This can be done when the Process Raw operation is complete, or they can be deleted from the green screen using the Delete from document button.

​

Simply select the superfluous parameter rule from one of the tabs in the right hand pane and press the Delete from document button. It will be deleted from the Text Data File parameter section of the test case when the Process raw operation is complete.

 

bottom of page