The following plugin provides functionality available through Pipeline-compatible steps. Read more about how to integrate steps into your Pipeline in the Steps section of the Pipeline Syntax page.

For a list of other such plugins, see the Pipeline Steps Reference page.

Micro Focus LoadRunner Enterprise integration With Git

pcGitBuild: Synchronize LoadRunner Enterprise With Git

The plugin allows to synchronize scripts from Git repository to Micro Focus LoadRunner Enterprise project.
The plugin respects the subfolders structure defined in Git when synchronizing LoadRunner scripts to Performance Center 12.60 and above. For previous versions, all scripts will be uploaded to the same root folder in the Test Plan tree of the LoadRunner Enterprise project (scripts with duplicated named will be overwritten).
  • description
    • Type: String
  • pcServerName
    Hostname or IP address The LoadRunner Enterprise Hostname or IP address. If the port of the LRE server is different than the default one, mention it by adding a collon (:) and then the port number
    Example: mypcserver.mycompany.net or 182.138.255.1 or mypcserver.mycompany.net:81

    If the LRE server requires to be accessed via a tenant, you can specify it by adding the tenant details to the LRE Server field.
    Example: mypcserver.mycompany.net/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3 or 182.138.255.1/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3 or mypcserver.mycompany.net:81/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3

    Important: Do not use the full URL of LoadRunner Enterprise server.
    For example, using https://mypcserver/LoadTest will fail. Instead, just specify 'mypcserver' value in 'LRE Server' field and switch on the 'Use HTTPS Protocol' if secured protocol is required.
    • Type: String
  • httpsProtocol
    • Type: boolean
  • credentialsId
    LoadRunner Enterprise User / Token's Credentials or parameter pointing to such credentials.
    • Type: String
  • almDomain
    • Type: String
  • almProject
    • Type: String
  • serverAndPort
    • Type: String
  • proxyOutURL
    Add your local proxy as following:
    http(s)://host:port
    or Leave empty if not using a local proxy.
    The following proxy configurations are not supported:
    • PAC (proxy auto-config).
    • Automatic configuration script.
    • Type: String
  • credentialsProxyId
    • Type: String
  • subjectTestPlan
    The Test Plan folder path in LoadRunner Enterprise where the scripts will be loaded.
    Available paths can be found in the LoadRunner Enterprise interface: Test Management -> Test Plan
    The path must begin with "Subject" and be separated with backslashes (\).
    The path is case-sensitive!
    Important: For Performance Center Server below version 12.60:
    • the specified folder must exist at the time of the build (the plugin can not create folders independently).
    • Scripts saved in Git subfolders will be synchronized to the specified subject and in case of duplicated script names in Git, the last uploaded script to LRE will overwrite the previously uploaded script(s) with the same name.
    • Type: String
  • uploadScriptMode
    This corresponds to the similar option existing in LoadRunner Enterprise / VuGen:
    • All Files: All script files are uploaded (this takes longer to load).
    • Runtime Files: Only the required files are uploaded (script files, Runtime Settings, parameter files, etc.)
    Recommended value: "Runtime Files".
    • Values: RUNTIME_FILES, ALL_FILES
  • removeScriptFromPC
    This option will allow you to synchronize scripts deletion from Git to LoadRunner Enterprise.

    The recommended value is " Yes".
    • Values: YES, NO
  • importTests

    How to import tests from YAML files saved in the Git repository

    Copy your YAML files to a folder in your Git repository (YAML files under the root of the Git repository will be ignored). The plugin will create the test in the LoadRunner Enterprise project according to:
    • The file name (without extension) which will be used as test name.
    • The location of the file in the Git repository which will be the location of the test under the root folder ('Subject') in the Test Management tree.
    • The content of the YAML file which must be composed according to the parameters described in the tables below.

    Note:

    • All parameters must be in lowercase.
    • When a backslash (\) occurs in a value provided to a parameter (for example, a folder separator in a file path), a double backslash (\\) must be used instead.
    • This feature is supported with Performance Center 12.61 and later versions.

    Root parameters of the YAML file:
    Parameter Description Required
    controller
    Defines the Controller to be used during the test run (it must be an available host in the LoadRunner Enterprise project). If not specified, a Controller will be chosen from the different controllers available in the LoadRunner Enterprise project.
    From Performance Center 12.62 and plugin version 1.1.1, the option to provision a Controller as a Docker image is available by specifying the value "Elastic" and providing a value for the 'controller_elastic_configuration' parameter (see 'controller_elastic_configuration' table below).
    No
    lg_amount Number of load generators to allocate to the test (every group in the test will be run by the same load generators). Not required if each group defined in the 'group' parameter defines the load generators it will be using via the 'lg_name' parameter (see 'group' table below).
    group Lists all groups or scripts defined in the test. The parameter to be used in each group are specified in the 'group' table below. Yes
    scheduler Defines the duration of a test, and determines whether virtual users are started simultaneously or gradually. See the 'scheduler' table below. No
    lg_elastic_configuration Defines the image to be used in order to provision load generators. See the 'lg_elastic_configuration' table below. Available from Performance Center 12.62 and plugin version 1.1.1. Yes, if a load generator is defined to be provisioned from a Docker image.
    controller_elastic_configuration Defines the image to be used in order to provision the Controller. See the 'controller_elastic_configuration' table below. Available from Performance Center 12.62 and plugin version 1.1.1. Yes, if the Controller is defined to be provisioned from a Docker image.

    group:
    Parameter Description Required
    group_name Name of the group (it must be a unique name if several groups are defined). Yes
    vusers Number of virtual users to allocate to the group for running the script. Yes
    script_id ID of the script in the LoadRunner Enterprise project. Not required if the 'script_path' parameter is specified.
    script_path Path and name of the script to be added to the group, separated by double backslashes (\\). For example "MyMainFolder\\MySubFolder\\MyScriptName'. Do not include the LoadRunner Enterprise root folder (named "Subject"). Not required if 'script_id' parameter is specified
    lg_name List of load generators to allocate to the group for running the script. The supported values are:
    • The hostname, as defined in LoadRunner Enterprise, of an existing load generator in LoadRunner Enterprise allocated as a host.
    • "LG" followed by a number, to use an automatically matched load generator (recommended).
    • "DOCKER" followed by a number, to use a dynamic load generator (available from Performance Center 12.62, if your project is set to work with Docker). This option requires the 'lg_elastic_configuration' parameter to be defined (see the 'lg_elastic_configuration' table below).
    No
    command_line The command line applied to the group. No
    rts Object defining the runtime settings of the script. See the 'rts' table below. No

    rts:
    Parameter Description Required
    pacing Can be used to define the number of iterations the script will run and the required delay between iterations (see the 'pacing' table below). No
    thinktime Can be used to define think time (see the 'thinktime' table below). No
    java_vm Can be used when defining Java environment runtime settings (see the 'java_vm' table below). No
    jmeter Can be used to define JMeter environment runtime settings (see the 'jmeter' table below). No

    pacing:
    Parameter Description Required
    number_of_iterations Specifies the number of iterations to run; this must be a positive number. Yes
    type Possible values for type attribute are:
    • "immediately": ignores 'delay' and 'delay_random_range' parameters. This is the default value when no type is specified.
    • "fixed delay": 'delay' parameter is mandatory.
    • "random delay": 'delay' and 'delay_random_range' parameters are mandatory.
    • "fixed interval": 'delay' parameter is mandatory.
    • "random interval": 'delay' and 'delay_random_range' parameters are mandatory.
    No
    delay Non-negative number (less than 'delay_at_range_to_seconds' when specified). Depends on the value provided for the 'type' parameter.
    delay_random_range Non-negative number. It will be added to the value given to the 'delay' parameter (the value will be randomly chosen between the value given to 'delay' parameter and the same value to which is added the value of this parameter). Depends on the value provided for the 'type' parameter.

    thinktime:
    Parameter Description Required
    type The ThinkTime Type attribute is one of:
    • "ignore": This is the default value when no type is specified.
    • "replay": Provide 'limit_seconds' parameter with value.
    • "modify": Provide 'limit_seconds' and 'multiply_factor' parameters with values.
    • "random": Provide 'limit_seconds', 'min_percentage' and 'max_percentage' parameters with values.
    No
    min_percentage This must be a positive number. Depends on the value provided for the 'type' parameter.
    max_percentage This must be a positive number (it must be larger than the value provided for the 'min_percentage' parameter). Depends on the value provided for the 'type' parameter.
    limit_seconds This must be a positive number. Depends on the value provided for the 'type' parameter.
    multiply_factor The recorded think time is multiplied by this factor at runtime. Depends on the value provided for the 'type' parameter.

    java_vm:
    Parameter Description Required
    jdk_home The JDK installation path. No
    java_vm_parameters List the Java command line parameters. These parameters can be any JVM argument. The common arguments are the debug flag (-verbose) or memory settings (-ms, -mx). In additional, you can also pass properties to Java applications in the form of a -D flag. No
    use_xboot Boolean: Instructs VuGen to add the Classpath before the Xbootclasspath (prepend the string). No
    enable_classloader_per_vuser Boolean: Loads each Virtual User using a dedicated class loader (runs Vusers as threads). No
    java_env_class_paths A list of classpath entries. Use a double backslash (\\) for folder separators. No

    jmeter:
    Parameter Description Required
    start_measurements Boolean value to enable JMX measurements during performance test execution. No
    jmeter_home_path Path to JMeter home. If not defined, the path from the %JMETER_HOME% environment variable is used. No
    jmeter_min_port This number must be lower than the value provided in the 'jmeter_max_port' parameter. Both 'jmeter_min_port' and 'jmeter_max_port' parameters must be specified otherwise the default port values is used. No
    jmeter_max_port This number must be higher than the value provided in the 'jmeter_min_port' parameter. Both 'jmeter_min_port' and 'jmeter_max_port' parameters must be specified otherwise the default port values is used. No
    jmeter_additional_properties JMeter additional properties file. Use double slash (\\) for folder separator. No

    scheduler:
    Parameter Description Required
    rampup Time, in seconds, to gradually start all virtual users. Additional virtual users are added every 15 seconds until the time specified in the parameter ends. If no value is specified, all virtual users are started simultaneously at the beginning of the test. No
    duration Time, in seconds, that it will take to run the test after all virtual users are started. After this time, the test run ends. If not specified, the test will run until completion. No

    lg_elastic_configuration: (available from Performance Center 12.62 and plugin version 1.1.1)
    Parameter Description Required
    image_id This number can be retrieved from:
    • The Administration page of LoadRunner Enterprise (you might need to turn to your LoadRunner Enterprise administrator as accessing this page requires admin privileges): select the Orchestration section -> switch to Docker Images tab -> you will have the list of all available Docker images for Load Generator purposes with their ID. You can make sure the images are available to your project from the Orchestrators tab.
    • A LoadRunner Enterprise Rest API command applied on the project (replace the bracketed values): GET - http(s)://(PCServer):(PortNumber)/LoadTest/rest/domains/(DomainName)/projects/(ProjectName)/dockerimages/ and select any valid image not having the value 'controller' for purpose.
    Yes if one of the load generator is defined to be provisioned from Docker image.
    memory_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> Press Assign LG button -> in the Elastic section, select DOCKER1 -> select the relevant image (based on the image name) -> use the values provided in the 'Memory(GB)' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits
    cpu_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> Press Assign LG button -> in the Elastic section, select DOCKER1 -> select the relevant image (based on the image name) -> use the values provided in the 'CUPs' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits

    controller_elastic_configuration: (available from Performance Center 12.62 and plugin version 1.1.1)
    Parameter Description Required
    image_id This number can be retrieved from:
    • The Administration page of LoadRunner Enterprise (you might need to turn to your LoadRunner Enterprise administrator as accessing this page requires admin privileges): select the Orchestration section -> switch to Docker Images tab -> you will have the list of all available Docker images for Controller purposes with their ID. You can make sure the images are available to your project from the Orchestrators tab.
    • A LoadRunner Enterprise Rest API command applied on the project (replace the bracketed values): GET - http(s)://(PCServer):(PortNumber)/LoadTest/rest/domains/(DomainName)/projects/(ProjectName)/dockerimages/ and select any valid image having the value 'controller' for purpose.
    Yes if the Controller is defined to be provisioned from Docker image.
    memory_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> select the Controller -> choose Elastic option -> select the relevant image -> Under the Resource Limits label, find and use the values provided in the 'Memory(GB)' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits
    cpu_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> select the Controller -> choose Elastic option -> select the relevant image -> Under the Resource Limits label, find and use the values provided in the 'CUPs' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits

    In the example below:
    • The plugin automatically assigns the file name as the test name, and the folder path of the file in the Git repository is used to create the location of the test under the root folder ('Subject') in the LoadRunner Enterprise project.
    • In the content:
      • Since no Controller and no load generator amount were specified, a random available Controller will be allocated to the test just before it is run and the 'lg_name' parameter specified in each group will be used.
      • In the 'group' parameter:
        • We added two scripts. For each, we provided a unique value in the 'group_name' parameter, and the number of virtual users to run the group.
        • Since we did not know the ID of the scripts, we used the 'script_path' parameter in which we entered the script path (without "Subject") followed by the script name, and used double backslashes for separators.
        • We specified the load generators that will be used by each group (in this case, load generators will automatically be matched as we use the 'LG' prefix).
    • In the scheduler:
      • We want all Virtual Users to be initialized gradually (45 seconds).
      • We want the test to stop after 5 minutes (300 seconds).
    
    ##################################################
    group:
    - group_name: "TEstInt"
      vusers: '20'
      script_path: "plugin\\TEstInt"
      lg_name:
      - "LG1"
      - "LG2"
    - group_name: "Mtours"
      vusers: '20'
      script_path: "plugin\\mtours"
      lg_name:
      - "LG3"
      - "LG4"
    scheduler:
      rampup: '45'
      Duration: '300'
    ##################################################
    
    

    In the example below:
    • The plugin automatically assigns the file name as the test name, and the folder path of the file in the Git repository is used to create the location of the test under the root folder ('Subject') in the LoadRunner Enterprise project.
    • Since the 'controller' and the 'lg_amount' parameters are specified, the specified Controller will be used to run the test and three automatch load generators will be used and shared by all groups.
    • The content of the file is defined with seven groups, all being set with the “rts” parameter:
      • The “pacing” parameter is used with different options for all groups.
      • The “java_vm” parameter is used for five scripts with JavaVM for protocol.
      • The “thinktime” parameter is used with different options for four groups.
      • The “jmeter” parameter is used for two scripts with JMeter for protocol.
    • In the scheduler:
      • We want all Virtual Users to be initialized gradually (120 seconds).
      • We want the test to stop after 10 minutes (600 seconds).
    
    ##################################################
    controller: "mycontroller"
    lg_amount: 3
    group:
      - group_name: "JavaVuser_LR_Information_pacing_immediately_thinktime_ignore"
        vusers: 50
        script_id: 394
        rts:
          pacing:
            number_of_iterations: 2
            type: "immediately"
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            use_xboot: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "ignore"
    
      - group_name: "JavaHTTP_BigXML_pacing_fixed_delay_thinktime_replay"
        vusers: 50
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "fixed delay"
            delay: 10
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
          thinktime:
            type: "replay"
            limit_seconds: 30
    
      - group_name: "JavaVuser_LR_Information_immediately_pacing_random_delay_thinktime_modify"
        vusers: 50
        script_id: 394
        rts:
          pacing:
            number_of_iterations: 2
            type: "random delay"
            delay: 10
            delay_random_range: 20
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "modify"
            limit_seconds: 30
            multiply_factor: 2
    
      - group_name: "JavaHTTP_BigXML_pacing_fixed_interval_thinktime_random"
        vusers: 50
        #script_id: 392
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "fixed interval"
            delay: 10
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "random"
            limit_seconds: 30
            min_percentage: 2
            max_percentage: 3
    
      - group_name: "JavaHTTP_BigXML_pacing_random_interval"
        vusers: 50
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
    
      - group_name: "Mtours_pacing_random_interval"
        vusers: 50
        script_path: "scripts\\Mtours"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          jmeter:
            start_measurements: true
            jmeter_home_path: "c:\\jmeter"
            jmeter_min_port: 2001
            jmeter_max_port: 3001
            jmeter_additional_properties: "jmeter_additional_properties"
      - group_name: "Mtours_pacing_random_interval_Jmeter_default_port"
        vusers: 50
        script_path: "scripts\\Mtours"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          jmeter:
            start_measurements: true
    
    scheduler:
      rampup: 120
      duration: 600
    ##################################################
    
    

    • Values: YES, NO
  • authenticateWithToken
    From LRE 2021 R1, you can use a token associated with your user for authentication.
    If LRE is defined to use SSO, this will be the only way for this plugin to authenticate to LRE.
    To use it, have a token issued to your user in LRE.
    In Jenkins, create new Jenkins credentials based on the LRE token you received: use the ClientIdKey in the Username and the ClientSecretKey key in the password.
    Then use the new Jenkins credentials with this checkbox switched on.
    • Type: boolean

pcRunBuild: Run Performance Test Using LoadRunner Enterprise

  • serverAndPort
    • Type: String
  • pcServerName
    Hostname or IP address The LoadRunner Enterprise Hostname or IP address. If the port of the LRE server is different than the default one, mention it by adding a collon (:) and then the port number
    Example: mypcserver.mycompany.net or 182.138.255.1 or mypcserver.mycompany.net:81

    If the LRE server requires to be accessed via a tenant, you can specify it by adding the tenant details to the LRE Server field.
    Example: mypcserver.mycompany.net/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3 or 182.138.255.1/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3 or mypcserver.mycompany.net:81/?tenant=fa128c06-5436-413d-9cfa-9f04bb738df3

    Important: Do not use the full URL of LoadRunner Enterprise server.
    For example, using https://mypcserver/LoadTest will fail. Instead, just specify 'mypcserver' value in 'LRE Server' field and switch on the 'Use HTTPS Protocol' if secured protocol is required.
    • Type: String
  • credentialsId
    LoadRunner Enterprise User / Token's Credentials or parameter pointing to such credentials.
    • Type: String
  • almDomain
    • Type: String
  • almProject
    • Type: String
  • testToRun
    • Type: String
  • testId
    • Type: String
  • testContentToCreate

    How to create a test from YAML input

    The content of the field must either be:

    • Text in YAML syntax composed according to the parameters described in the tables below. You must set values to the 'test_name' and 'test_folder_path' parameters and continue with the'test_content' parameter and its sub-parameters.
    • As opposed to the previous option, you can also specify as value a relative path to a YAML file within the workspace (or within your Git repository cloned within the workspace). In the YAML file, only specify the parameters defined in the 'test_content' table. The following logic will be used to create the LoadRunner Enterprise test:
      • The file name (without extension) will be used as the test name.
      • The location of the file in the Git repository will be the location of the test under the root folder ('Subject') in the Test Management tree.
      • The content of the YAML file must consist of the parameters, and their sub-parameters, listed in the 'test_content' table below.

    Note:

    • All parameters must be in lowercase.
    • When a backslash (\) occurs in a value provided to a parameter (for example, a folder separator in a file path), a double backslash (\\) must be used instead.
    • This feature is supported with Performance Center 12.61 and later versions.

    Root parameters of the field
    Parameter Description Required
    test_name The test name. Yes
    test_folder_path The location of the test in the Test Management folder tree of the LoadRunner Enterprise project. The folders should be separated by double backslashes (\\). For example, "MyMainFolder\\MySubfolder\\MySubSubFolder". Do not include the LoadRunner Enterprise root folder (named "Subject") Yes
    test_content The content of the test that requires additional parameters specified in the 'test_content' table below. Yes

    test_content (if a YAML file is specified in the field, those are the root parameter to be used in the file content):
    Parameter Description Required
    controller
    Defines the Controller to be used during the test run (it must be an available host in the LoadRunner Enterprise project). If not specified, a Controller will be chosen from the different controllers available in the LoadRunner Enterprise project.
    From Performance Center 12.62 and plugin version 1.1.1, the option to provision a Controller as a Docker image is available by specifying the value "Elastic" and providing a value for the 'controller_elastic_configuration' parameter (see 'controller_elastic_configuration' table below).
    No
    lg_amount Number of load generators to allocate to the test (every group in the test will be run by the same load generators). Not required if each group defined in the 'group' parameter defines the load generators it will be using via the 'lg_name' parameter (see 'group' table below).
    group Lists all groups or scripts defined in the test. The parameter to be used in each group are specified in the 'group' table below. Yes
    scheduler Defines the duration of a test, and determines whether virtual users are started simultaneously or gradually. See the 'scheduler' table below. No
    lg_elastic_configuration Defines the image to be used in order to provision load generators. See the 'lg_elastic_configuration' table below. Available from Performance Center 12.62 and plugin version 1.1.1. Yes, if a load generator is defined to be provisioned from a Docker image.
    controller_elastic_configuration Defines the image to be used in order to provision the Controller. See the 'controller_elastic_configuration' table below. Available from Performance Center 12.62 and plugin version 1.1.1. Yes, if the Controller is defined to be provisioned from a Docker image.

    group:
    Parameter Description Required
    group_name Name of the group (it must be a unique name if several groups are defined). Yes
    vusers Number of virtual users to allocate to the group for running the script. Yes
    script_id ID of the script in the LoadRunner Enterprise project. Not required if the 'script_path' parameter is specified.
    script_path Path and name of the script to be added to the group, separated by double backslashes (\\). For example "MyMainFolder\\MySubFolder\\MyScriptName'. Do not include the LoadRunner Enterprise root folder (named "Subject"). Not required if 'script_id' parameter is specified
    lg_name List of load generators to allocate to the group for running the script. The supported values are:
    • The hostname, as defined in LoadRunner Enterprise, of an existing load generator in LoadRunner Enterprise allocated as a host.
    • "LG" followed by a number, to use an automatically matched load generator (recommended).
    • "DOCKER" followed by a number, to use a dynamic load generator. Available from Performance Center 12.62, if your project is set to work with Docker. This option requires the 'lg_elastic_configuration' parameter to be defined (see the 'lg_elastic_configuration' table below).
    No
    command_line The command line applied to the group. No
    rts Object defining the runtime settings of the script. See the 'rts' table below. No

    rts:
    Parameter Description Required
    pacing Can be used to define the number of iterations the script will run and the required delay between iterations (see the 'pacing' table below). No
    thinktime Can be used to define think time (see the 'thinktime' table below). No
    java_vm Can be used when defining Java environment runtime settings (see the 'java_vm' table below). No
    jmeter Can be used to define JMeter environment runtime settings (see the 'jmeter' table below). No

    pacing:
    Parameter Description Required
    number_of_iterations Specifies the number of iterations to run; this must be a positive number. Yes
    type Possible values for type attribute are:
    • "immediately": ignores 'delay' and 'delay_random_range' parameters. This is the default value when no type is specified.
    • "fixed delay": 'delay' parameter is mandatory.
    • "random delay": 'delay' and 'delay_random_range' parameters are mandatory.
    • "fixed interval": 'delay' parameter is mandatory.
    • "random interval": 'delay' and 'delay_random_range' parameters are mandatory.
    No
    delay Non-negative number (less than 'delay_at_range_to_seconds' when specified). Depends on the value provided for the 'type' parameter.
    delay_random_range Non-negative number. It will be added to the value given to the 'delay' parameter (the value will be randomly chosen between the value given to 'delay' parameter and the same value to which is added the value of this parameter). Depends on the value provided for the 'type' parameter.

    thinktime:
    Parameter Description Required
    type The ThinkTime Type attribute is one of:
    • "ignore": This is the default value when no type is specified.
    • "replay": Provide 'limit_seconds' parameter with value.
    • "modify": Provide 'limit_seconds' and 'multiply_factor' parameters with values.
    • "random": Provide 'limit_seconds', 'min_percentage' and 'max_percentage' parameters with values.
    No
    min_percentage This must be a positive number. Depends on the value provided for the 'type' parameter.
    max_percentage This must be a positive number (it must be larger than the value provided for the 'min_percentage' parameter). Depends on the value provided for the 'type' parameter.
    limit_seconds This must be a positive number. Depends on the value provided for the 'type' parameter.
    multiply_factor The recorded think time is multiplied by this factor at runtime. Depends on the value provided for the 'type' parameter.

    java_vm:
    Parameter Description Required
    jdk_home The JDK installation path. No
    java_vm_parameters List the Java command line parameters. These parameters can be any JVM argument. The common arguments are the debug flag (-verbose) or memory settings (-ms, -mx). In additional, you can also pass properties to Java applications in the form of a -D flag. No
    use_xboot Boolean: Instructs VuGen to add the Classpath before the Xbootclasspath (prepend the string). No
    enable_classloader_per_vuser Boolean: Loads each Virtual User using a dedicated class loader (runs Vusers as threads). No
    java_env_class_paths A list of classpath entries. Use a double backslash (\\) for folder separators. No

    jmeter:
    Parameter Description Required
    start_measurements Boolean value to enable JMX measurements during performance test execution. No
    jmeter_home_path Path to JMeter home. If not defined, the path from the %JMETER_HOME% environment variable is used. No
    jmeter_min_port This number must be lower than the value provided in the 'jmeter_max_port' parameter. Both 'jmeter_min_port' and 'jmeter_max_port' parameters must be specified otherwise the default port values is used. No
    jmeter_max_port This number must be higher than the value provided in the 'jmeter_min_port' parameter. Both 'jmeter_min_port' and 'jmeter_max_port' parameters must be specified otherwise the default port values is used. No
    jmeter_additional_properties JMeter additional properties file. Use double slash (\\) for folder separator. No

    scheduler:
    Parameter Description Required
    rampup Time, in seconds, to gradually start all virtual users. Additional virtual users are added every 15 seconds until the time specified in the parameter ends. If no value is specified, all virtual users are started simultaneously at the beginning of the test. No
    duration Time, in seconds, that it will take to run the test after all virtual users are started. After this time, the test run ends. If not specified, the test will run until completion. No

    lg_elastic_configuration: (available from Performance Center 12.62 and plugin version 1.1.1)
    Parameter Description Required
    image_id This number can be retrieved from:
    • The Administration page of LoadRunner Enterprise (you might need to turn to your LoadRunner Enterprise administrator as accessing this page requires admin privileges): select the Orchestration section -> switch to Docker Images tab -> you will have the list of all available Docker images for Load Generator purposes with their ID. You can make sure the images are available to your project from the Orchestrators tab.
    • A LoadRunner Enterprise Rest API command applied on the project (replace the bracketed values): GET - http(s)://(PCServer):(PortNumber)/LoadTest/rest/domains/(DomainName)/projects/(ProjectName)/dockerimages/ and select any valid image not having the value 'controller' for purpose.
    Yes if one of the load generator is defined to be provisioned from Docker image.
    memory_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> Press Assign LG button -> in the Elastic section, select DOCKER1 -> select the relevant image (based on the image name) -> use the values provided in the 'Memory(GB)' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits
    cpu_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> Press Assign LG button -> in the Elastic section, select DOCKER1 -> select the relevant image (based on the image name) -> use the values provided in the 'CUPs' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits

    controller_elastic_configuration: (available from Performance Center 12.62 and plugin version 1.1.1)
    Parameter Description Required
    image_id This number can be retrieved from:
    • The Administration page of LoadRunner Enterprise (you might need to turn to your LoadRunner Enterprise administrator as accessing this page requires admin privileges): select the Orchestration section -> switch to Docker Images tab -> you will have the list of all available Docker images for Controller purposes with their ID. You can make sure the images are available to your project from the Orchestrators tab.
    • A LoadRunner Enterprise Rest API command applied on the project (replace the bracketed values): GET - http(s)://(PCServer):(PortNumber)/LoadTest/rest/domains/(DomainName)/projects/(ProjectName)/dockerimages/ and select any valid image having the value 'controller' for purpose.
    Yes if the Controller is defined to be provisioned from Docker image.
    memory_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> select the Controller -> choose Elastic option -> select the relevant image -> Under the Resource Limits label, find and use the values provided in the 'Memory(GB)' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits
    cpu_limit This parameter can be retrieved from LoadRunner Enterprise Application -> Test Management -> edit a test -> select the Controller -> choose Elastic option -> select the relevant image -> Under the Resource Limits label, find and use the values provided in the 'CUPs' dropdown list (if not specified, this parameter should be ignored). Yes, if the image is defined with resource limits

    In the next example, the value of the field is set with the code below:
    • The test name is "mytestname" and it will be placed in the LoadRunner Enterprise project under the folder path "Subject\\Tests\\mytests" (the root folder of the folders, which is "Subject", should not be specified in the parameter). The folder separator is a double backslash (\\).
    • In the content:
      • Since no Controller or load generator amount were specified, a random available Controller will be used to run the test, and the 'lg_name' parameter specified in each group will be used.
      • In the 'group' parameter:
        • We added two scripts. For each, we provided a unique value in the 'group_name' parameter, and the number of virtual users to run the group.
        • Since we did not know the ID of the scripts, we used the 'script_path' parameter in which we entered the script path (without "Subject") followed by the script name, and used double backslashes for separators.
        • We specified the load generators that will be used by each group (in this case, load generators will automatically be matched as we use the 'LG' prefix).
    • In the scheduler:
      • We want all Virtual Users to be initialized gradually (45 seconds).
      • We want the test to stop after 5 minutes (300 seconds).
    
    ##################################################
    test_name: mytestname
    test_folder_path: "Tests\\mytests"
    test_content:
      group:
        - group_name: "TEstInt"
          vusers: '20'
          script_path: "plugin\\TEstInt"
          lg_name:
            - "LG1"
            - "LG2"
        - group_name: "Mtours"
          vusers: '20'
          script_path: "plugin\\mtours"
          lg_name:
            - "LG3"
            - "LG4"
      scheduler:
        rampup: '45'
        duration: '300'
    ##################################################
    
    

    In the next example, a YAML file location is specified as value and the content of the file contains the code below:
    • The plugin automatically assigns the file name as the test name, and the folder path of the file in the Git repository is used to create the location of the test under the root folder ('Subject') in the LoadRunner Enterprise project.
    • In the content:
      • Since no Controller or load generator amount were specified, a random available Controller will be used to run the test, and the 'lg_name' parameter specified in each group will be used.
      • In the 'group' parameter:
        • We added two scripts. For each, we provided a unique value in the 'group_name' parameter, and the number of virtual users to run the group.
        • Since we did not know the ID of the scripts, we used the 'script_path' parameter in which we entered the script path (without "Subject") followed by the script name, and used double backslashes for separators.
        • We specified the load generators that will be used by each group (in this case, load generators will automatically be matched as we use the 'LG' prefix).
    • In the scheduler:
      • We want all Virtual Users to be initialized gradually (45 seconds).
      • We want the test to stop after 5 minutes (300 seconds).
    
    ##################################################
    group:
      - group_name: "TEstInt"
        vusers: '20'
        script_path: "plugin\\TEstInt"
        lg_name:
          - "LG1"
          - "LG2"
      - group_name: "Mtours"
        vusers: '20'
        script_path: "plugin\\mtours"
        lg_name:
          - "LG3"
          - "LG4"
    scheduler:
      rampup: '45'
      duration: '300'
    ##################################################
    
    

    In the next example, a YAML file location is specified as value and the content of the file contains the code below:
    • The plugin automatically assigns the file name as the test name, and the folder path of the file in the Git repository is used to create the location of the test under the root folder ('Subject') in the LoadRunner Enterprise project.
    • Since the 'controller' parameter and the 'lg_amount' parameter are specified, the specified controller will be used to run the test and three automatch load generators will be used and shared by all groups.
    • The content of the file is defined with seven groups, all being set with the “rts” parameter:
      • The “pacing” parameter is used with different options for all groups.
      • The “java_vm” parameter is used for five scripts with JavaVM for protocol.
      • The “thinktime” parameter is used with different options for four groups.
      • The “jmeter” parameter is used for two scripts with JMeter for protocol.
    • In the scheduler:
      • We want all Virtual Users to be initialized gradually (120 seconds).
      • We want the test to stop after 10 minutes (600 seconds).
    
    ##################################################
    controller: "mycontroller"
    lg_amount: 3
    group:
      - group_name: "JavaVuser_LR_Information_pacing_immediately_thinktime_ignore"
        vusers: 50
        script_id: 394
        rts:
          pacing:
            number_of_iterations: 2
            type: "immediately"
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            use_xboot: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "ignore"
    
      - group_name: "JavaHTTP_BigXML_pacing_fixed_delay_thinktime_replay"
        vusers: 50
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "fixed delay"
            delay: 10
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
          thinktime:
            type: "replay"
            limit_seconds: 30
    
      - group_name: "JavaVuser_LR_Information_immediately_pacing_random_delay_thinktime_modify"
        vusers: 50
        script_id: 394
        rts:
          pacing:
            number_of_iterations: 2
            type: "random delay"
            delay: 10
            delay_random_range: 20
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "modify"
            limit_seconds: 30
            multiply_factor: 2
    
      - group_name: "JavaHTTP_BigXML_pacing_fixed_interval_thinktime_random"
        vusers: 50
        #script_id: 392
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "fixed interval"
            delay: 10
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
          thinktime:
            type: "random"
            limit_seconds: 30
            min_percentage: 2
            max_percentage: 3
    
      - group_name: "JavaHTTP_BigXML_pacing_random_interval"
        vusers: 50
        script_path: "scripts\\java_protocols\\JavaHTTP_BigXML"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          java_vm:
            jdk_home: "C:\\Program Files\\Java\\jdk1.8.0_191"
            java_vm_parameters: "java_vm_parameters"
            enable_classloader_per_vuser: true
            java_env_class_paths:
              - "java_env_class_path1"
              - "java_env_class_path2"
    
      - group_name: "Mtours_pacing_random_interval"
        vusers: 50
        script_path: "scripts\\Mtours"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          jmeter:
            start_measurements: true
            jmeter_home_path: "c:\\jmeter"
            jmeter_min_port: 2001
            jmeter_max_port: 3001
            jmeter_additional_properties: "jmeter_additional_properties"
      - group_name: "Mtours_pacing_random_interval_Jmeter_default_port"
        vusers: 50
        script_path: "scripts\\Mtours"
        rts:
          pacing:
            number_of_iterations: 2
            type: "random interval"
            delay: 10
            delay_random_range: 20
          jmeter:
            start_measurements: true
    
    scheduler:
      rampup: 120
      duration: 600
    ##################################################
    
    

    • Type: String
  • testInstanceId
    Represents an instance of a performance test within an ALM Test Set. In order to find the test instance id go to: LoadRunner Enterprise Application > Test Lab perspective > Performance Test Set table and look for the ID column
    • Type: String
  • autoTestInstanceID
    • Type: String
  • timeslotDurationHours
    • Type: String
  • timeslotDurationMinutes
    • Type: String
  • postRunAction
    • Values: COLLATE, COLLATE_AND_ANALYZE, DO_NOTHING
  • vudsMode
    A Virtual User Day (VUD) license provides you with a specified number of Vusers (VUDs) that you can run an unlimited number of times within a 24 hour period. Before using this option, make sure that VUDs licenses are applied in your Micro Focus LoadRunner Enterprise environment.
    • Type: boolean
  • statusBySLA
    Check this option in order to set the build-step status according to a pre-defined SLA (Service Level Agreement) configured within your performance test. Unless checked, the build-step will be labeled as Passed as long as no failures occurred.
    • Type: boolean
  • description
    • Type: String
  • addRunToTrendReport
    • Type: String
  • trendReportId
    • Type: String
  • HTTPSProtocol
    • Type: boolean
  • proxyOutURL
    Add your local proxy as following: http(s)://host:port
    or Leave empty if not using a local proxy. The following proxy configurations are not supported:
    • PAC (proxy auto-config).
    • Automatic configuration script.
    • Type: String
  • credentialsProxyId
    • Type: String
  • retry
    • Type: String
  • retryDelay
    • Type: String
  • retryOccurrences
    • Type: String
  • authenticateWithToken
    From LRE 2021 R1, you can use a token associated with your user for authentication.
    If LRE is defined to use SSO, this will be the only way for this plugin to authenticate to LRE.
    To use it, have a token issued to your user in LRE.
    In Jenkins, create new Jenkins credentials based on the LRE token you received: use the ClientIdKey in the Username and the ClientSecretKey key in the password.
    Then use the new Jenkins credentials with this checkbox switched on.
    • Type: boolean

Was this page helpful?

Please submit your feedback about this page through this quick form.

Alternatively, if you don't wish to complete the quick form, you can simply indicate if you found this page helpful?

    


See existing feedback here.