Using Parameters in Test Steps

Parameters are a very helpful way to organize and extend the capabilities of tests. When using the test recorder, you can access parameters in a couple of different ways. The Parameters tab at the top of the recorder panel contains information about all of the parameters in your test and allows you to add new parameters:
Parameters tab
On this panel, you can also go to the Project Parameters sub-tab to see parameters that are shared across all the tests in a project.
If you create or edit a test step that had inputs, you can also create or view parameters with the Use Parameters option.
Access Parameter from a Test Step
Note that if your UI looks different you might be using the legacy test recorder. If you start using the new Smart Recorder, you should see options like those above.

What is a parameter?

A parameter is a way to store some information into a variable that can be manipulated in various ways. For example, an input parameter can be defined that has a certain value, and then at run time, it can be set to have another value. It could also be set to programmatically take on several values through data driven testing. Another example is to parameterize the output of a test step so that the value can be used in another step later on in the test.

Input and Output Parameters

Test steps can have two different types of parameters. Input parameters are parameters that give the test some input. An input parameter might be some text that gets typed into a field on the page or a numerical value that gets assigned.
Output parameters on the other hand are used to store information that is generated by a test step. When creating output parameters, it is important to remember to not give it a value since the value will be assigned by the test step when it runs. Output parameters can be used to pass data between test steps or to check the value of certain fields programmatically.

Combining Parameters with Direct Inputs

Parameters can be used on an input field on their own or they can be used together with non-parameterized inputs.
In the example shown in the previous image, when the test is run, the input field will receive a value that says Hi John. How are you? since the parameter FirstName will be replaced with the parameter value. If your test uses the first name in multiple places, you can reference the parameter from all those places and any changes made to the parameters will automatically show up in all of those places.