Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 15 Next »

Variables can be extracted from Test Case's responses and can be used in subsequent HTTP requests (test cases). To extract the variable's values from test case's actual results, please follow the steps below:

  • Expand the test case from which you want to extract variables
  • Go to "Variable Extractor" sub tab
  • Define the variable's name and their corresponding path in the JSON response
     

Notes

  • From vREST 1.3.1, variables having numeric values used in expected body (JSON Format), must be enclosed with double quotes.
  • From vREST 2.0.0, we have removed the JSON Path prefix `$.` or `$`.

Let us take an example, how we can extract a variable from API response:

  • Suppose we have an API which creates resource on server and returns the following JSON response:

    {
      "id": "54a79b704cba8d5328d087f5",
      "resource_name": "testcase",
      "resource_url": "http://vrest.io/i/demo/m/RVD/create_resource",
      "resource_description": "This API creates a resource on the server",
      "meta": {
    	"created_at": "2015-01-03T07:41:21.000Z"
      }
    }
  • Now, we want to save the id of newly created resource into variable say "resourceId" and creation time into variable say  "resourceCreatedAt". We can extract these variables in the following way:


     
     Few points regarding writing Path in the above table:
    • Each individual property value can be extracted via JSON path notation e.g. `id` or `meta.created_id`
    • For more information, read JSON Path syntax.
  • Now we can use these extracted variables in subsequent requests. Note that once a variable is defined, it can be used in all subsequent requests within that test run only. If you want to override this variable, simply re-define the variable in any request.

    Suppose we have an API which updates this newly created resource and it needs the ID of the resource to update. We can use the {{resourceId}} variable (extracted in previous step) in the URL as shown in the following figure:

     

Notes

  • Variable extraction feature is only applicable for JSON responses at present.
  • For defining JSON path, follow the guide.
  • No labels