Links

Scenario Flow

What is Scenario

Basically, a scenario is a collection of steps to simulate the end-user behavior. End-user might be the real user who uses the browser to visit your webpage, or it might be another software that sends API requests to your endpoints.
For example, let's say you are an e-commerce business owner and you want to performance test the user flow described below:
  1. 1.
    User hits the home page
  2. 2.
    User logs in
  3. 3.
    User adds a product to shopping cart
  4. 4.
    User pays
In this case, you need to build a scenario that consists of 4 steps. Since the steps in the scenario are executed respectively, the order of them is crucial.

What is Step

Step represents the individual network request.
  • Step Name is not mandatory. But it is nice to have since you can easily distinguish your steps on the Test Report page if you provide it.
  • Target is where you supply network protocol and URL.
Caution: Don't put query parameters to the target field. There is a section for query parameters in the Step Details modal.
For example, instead of example.com/search?q=term write example.com/search and put q=term parameter to the key-value form in Step Details modal.
  • Method is the http method of the request your server expects.
  • Click the New Step button if you would like to add another step for the scenario.
  • Click the More (three-dot icon at the right) button to provide Step Details if you need.

Step Details

You can provide query parameters, request headers, payload, authentication, and network details of the request here.

Dynamic Variables

Just like the Postman, Ddosify supports parameterization (dynamic variables) on URL, Query Parameters, Headers, Body, and Authentication inputs. Actually, we support all the random methods Postman supports. If you use {{$randomVariable}} on Postman you can use it as {{_randomVariable}} on Ddosify. Just change $ to _ and you will be fine. To simulate a realistic load test on your system, Ddosify can send every request with dynamic variables. The full list of dynamic variables can be found in this section.

Usage

Once you type { character on URL, Query Params, Headers, or Authentication inputs you will see an autocomplete that consists of supported dynamic variables.
Currently, there is no autocomplete support on Body input fields, but you can manually inject dynamic variables.

Debug the Scenario

It is always a good idea to debug your scenario before starting the load test. So you can be sure that the test configuration is ready to go.
Click the "Debug" button located at the top right corner of the Test Suite. In Debug mode, the test scenario will be iterated only once. When the debugging is finished, you will see the request headers, request body, response headers, response body, and response status code for each step.
Exampe figure for request content debug
Exampe figure for response content debug
You will not be charged for debug requests.
The response body limit is 10MB. Requests that respond larger than this limit mark as failed.