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.

Table of Contents

Micro Focus Application Automation Tools

loadRunnerTest: Run LoadRunner performance scenario tests

  • testPaths
    • Type: String
  • archiveTestResultsMode
    To view the run results, do one of the following:
    1) In the left pane, click the Report and Summary link to display the report link and the link to the report folder. From this link, you can open the run results directly in your browser or open the artifacts
    2) From the Build Artifacts:
    • Open the run_results.html to view the run results.
    • Download the zipped report to your desired location and unzip it. In the Run Results Viewer, select the Results.xml file found inside the unzipped folder.
    Note that this option is valid only when using the “Execute test from file system” build step.
    • Type: String
  • analysisTemplate (optional)
    Apply a template for the build (path to a .tem file). Leave blank in order to use the default template.
    • Type: String
  • controllerPollingInterval (optional)
    Polling interval for checking the scenario status, in seconds. The default is 30 seconds.
    • Type: String
  • displayController (optional)
    Display the controller while the scenario is running.
    • Type: String
  • fsTimeout (optional)
    Timeout value in seconds. If left empty, there is no timeout.
    • Type: String
  • ignoreErrorStrings (optional)
    Ignore errors during the scenario run containing any of the strings listed below. For example: "Error: CPU usage for this load generator has exceeded 80%"
    • Type: String
  • perScenarioTimeOut (optional)
    The maximum time allotted for scenario execution, in minutes.
    • Type: String
  • scriptRTSSetModel (optional)
      Nested Object
    • scripts
        Array / List of Nested Object
      • scriptName
        The script name is found in Controller's Script Information dialog (Percentage Mode scenario) or Group Information dialog (Vuser Group Mode scenario).
        • Type: String
      • additionalAttributes
          Array / List of Nested Object
        • name
          • Type: String
        • value
          • Type: String
        • description
          • Type: String
  • summaryDataLogModel (optional)
      Nested Object
    • logVusersStates
      Display the number of virtual users in each state.
      • Type: boolean
    • logErrorCount
      Display the number of controller errors.
      • Type: boolean
    • logTransactionStatistics
      Display the number of passed transactions, failed transactions and hits per second.
      • Type: boolean
    • pollingInterval
      The rate at which the messages are displayed (in seconds). Default value is 10 seconds.
      • Type: String

runLoadRunnerScript: Run LoadRunner script

  • scriptPath
    • Type: String

sseBuildAndPublish: Execute tests using ALM Lab Management and Publish tests result

  • almServerName
    • Type: String
  • almProject
    • Type: String
  • credentialsId
    • Type: String
  • clientType
    Client type is required for some ALM above 12.60 in authentication.
    • Type: String
  • almDomain
    • Type: String
  • runType
    • Type: String
  • almEntityId
    • Type: String
  • timeslotDuration
    • Type: String
  • archiveTestResultsMode
    To view the run results, do one of the following:
    1) In the left pane, click the Report and Summary link to display the report link and the link to the report folder. From this link, you can open the run results directly in your browser or open the artifacts
    2) From the Build Artifacts:
    • Open the run_results.html to view the run results.
    • Download the zipped report to your desired location and unzip it. In the Run Results Viewer, select the Results.xml file found inside the unzipped folder.
    Note that this option is valid only when using the “Execute test from file system” build step.
    • Type: String
  • cdaDetails (optional)
      Nested Object
    • deploymentAction
      • Type: String
    • deployedEnvironmentName
      • Type: String
    • deprovisioningAction
      • Type: String
  • description (optional)
    • Type: String
  • environmentConfigurationId (optional)
    To find the ID of your environment configuration, right-click the entity, copy the URL, and paste it to a text editor. Use the number associated with the EntityID at the end of the URL.
    • Type: String
  • postRunAction (optional)
    • Type: String

collectBranchesToAlmOctane: ALM Octane branch collector

This step is responsible for collecting branches from the SCM tool and injecting them into ALM Octane.

In addition, this step is used to define the SCM repository templates that are used by ALM Octane to link to your repository viewer. To configure templates in ALM Octane, access Settings > Spaces. Select a workspace and click DevOps > SCM Repositories. Follow the on-screen instructions.


Supported version of ALM Octane: 15.1.90 and later.

You can change the behaviour of this step by adding the following parameters to the job:
  • branches_active_branch_days: Only active branches can be added/updated to ALM Octane. Default is 60 days.

  • branches_max_branches_to_fill: Relevant for GitHub repository only. Max branches to collect data. If data is not collected from a branch, it cannot be added to ALM Octane. Default is 1000.



Supported SCM Tools:
SCM Tool Supported types of authentication How to create PAT (Personal access token)
Bitbucket Server User/password and PAT Click on your profile icon -> Manage account -> Personal access tokens -> Create a token (Assign Read permissions for both Projects and Repositories)
Github Cloud PAT only Click on your profile icon -> Settings -> Developer settings -> Personal access tokens -> Generate new token (Uncheck all scopes to grants read-only access)
Github Server User/password and PAT

Note : To create PAT credentials in Jenkins , use "Secret text" kind of credentials in "Add Credentials" dialog
  • configurationId
    • Type: String
  • workspaceId
    • Type: String
  • scmTool
    • Type: String
  • repositoryUrl
    • Type: String
  • credentialsId
    • Type: String
  • filter
    • Type: String
  • useSSHFormat (optional)
    Select this if all other jobs that use this repository and are connected to ALM Octane pipelines use SSH format. It is important to be consistent with other jobs that use this repository.
    This will ensure that ALM Octane correctly identifies the SCM repository associated with commits, branches and pull requests.
    • Type: boolean

commonResultUploadBuilder: Upload test result to ALM using field mapping

  • almServerName
    The name of the ALM Server.
    • Type: String
  • credentialsId
    • Type: String
  • almDomain
    The Domain of the project to be used.
    • Type: String
  • clientType
    Client type is required for some ALM above 12.60 in authentication.
    • Type: String
  • almProject
    The project to be used.
    • Type: String
  • almTestFolder
    The path of the test folder that will contain the uploaded test. The path doesn't include the Root test folder (Subject).
    For example, sampletestfolder\subfolder means, the tests will be uploaded to test folder named 'subfolder', which is under the test folder named 'sampletestfolder',
    and 'sampletestfolder' is under the root test folder 'Subject'.
    • Type: String
  • almTestSetFolder
    The path of the testset folder that will contain the uploaded testset. The path doesn't include the Root testset folder.
    For example, sampletestsetfolder\subfolder means, the testsets will be uploaded to testset folder named 'subfolder', which is under the testset folder named 'sampletestsetfolder',
    and 'sampletestsetfolder' is under the root testset folder 'Root'.
    • Type: String
  • testingResultFile
    setting that specifies the generated raw XML report files, such as **/junitResult.xml. Basedir of the fileset is the root path of current job and workspace.
    • Type: String
  • runStatusMapping

    Run status mapping field is for mapping the test result's status values to ALM run status value. Yaml key represents the test result run status value. You should first set the status field in field mapping. Yaml value represents the ALM run status values. There are following status in ALM:
    No Run
    Passed
    Failed
    Blocked
    Not Completed

    Take following test result as example: <test-case name="ExampleTestOfNUnit.TestMultiplicationFail" executed="True" result="Failure" success="False" time="0.122" asserts="1"> Sample field mapping: run: status: "x: success" Sample status mapping: status: True: "Passed" False: "Failed"
    • Type: String
  • fieldMapping

    Field mapping content is a yaml format configuration. Three sections are required. They are 'testset', 'test' and 'run'. Each section should has a 'root' property indicates the root node of the testset or test or run. Please note that test's root is based on testset's root. Run's root is based on test's root.

    Beside root, you can define any field you want to upload as an ALM entity. Yaml key represents the entity's field name. Yaml value represents the entity's field value.

    If you want to upload a value to a User defined field, you could use a key starts with 'udf|' follows by the UDF label. Such as 'udf-duration' would upload value to a UDF field which has label as 'duration'.

    For the yaml value part, there're two types of value. Value starts with 'x:' means the following value represents the xpath in the test result file. Value starts with 'v:' means the following value is a string value which would be applied to every entity.

    You can use '|' in yame value for combining several parts together.

    Sample test result: <?xml version='1.0' encoding='UTF-8'?> <result> <suites> <suite> <file>Changes file</file> <name>Changes Test Set 1</name> <duration>2.293</duration> <cases> <case> <duration>8.293</duration> <className>ChangesManagement</className> <testName>test1</testName> <testVersion>4.0</testVersion> <skipped>false</skipped> <failedSince>0</failedSince> </case> <case> <duration>8.293</duration> <className>ChangesManagement</className> <testName>List changes 2</testName> <testVersion>4.0</testVersion> <skipped>false</skipped> <failedSince>0</failedSince> </case> </cases> </suite> <duration>0.576</duration> </result> Sample field mapping: testset: root: "x:/result/suites/suite" name: "x:file|v:_|x:name" udf|duration: "x:duration" subtype-id: "v:hp.qc.test-set.external" test: root: "x:cases/case" name: "x:testName" subtype-id: "v:EXTERNAL-TEST" udf|duration: "x:duration" udf|test version: "x:testVersion" run: root: "x:." duration: "x:duration" status: "x:failedSince"
    • Type: String
  • createNewTest
    Check: Create tests and related test-instances and runs when no test is found by the specified fields(name by default or can be specified as id).
    Uncheck: Don't create test and related test-instances and runs when no test is found by the specified fields.
    Note: Tests will not be updated when they're found by the specified fields.
    • Type: boolean

publishGherkinResults: ALM Octane Cucumber test reporter

When using this action, Jenkins understands and reads the Cucumber test report XML structure. After reading the structure, Jenkins can provide useful information about Cucumber tests results to ALM Octane.

To use the feature, ensure that you have added a Publish JUnit test results post-build action to your build. Then, specify the path to the Cucumber report XML files in the Ant glob syntax.
You can specify multiple patterns by separating them with commas.
This path should only contain Cucumber report files. Note that no other test types will be reported from this job.

  • cucumberResultsGlob
    • Type: String

executeTestsFromAlmOctane: Execute tests from ALM Octane (Tech Preview)

This build step is intended to support execution of automated tests from Micro Focus ALM Octane.
There are several modes of execution :
Mode Explanation
Execute suite runs in ALM Octane Execute suites according to specified suite IDs. New suite runs will be created and executed in ALM Octane. Jenkins job is finished after triggering the suite runs. The job does not wait until the suite runs are finished. This method is useful if you want to schedule suite execution in ALM Octane.
By default, newly created suite runs will have name of suite and will be assigned to default release. In order to override this default behaviour, add following parameters (one or more) to job with your desired values:
  • octane_release_id
  • octane_new_suite_run_name
Get tests from suites and trigger execution jobs Get tests from suites and trigger execution jobs : Get tests from specified suite IDs. (This method assumes that tests are assigned to test runner jobs from the current Jenkins.) Tests are send to execution by their assigned test runner jobs. The main job is finished after the test runner jobs are finished. This method is useful if you intend to add your job to the ALM Octane Pipeline module.
  • configurationId
    • Type: String
  • workspaceId
    • Type: String
  • executionMode
    • Type: String
  • ids
    • Type: String

healthAnalyzer: Micro Focus Health Analyzer

  • products
    Choose the products that you would like to test that correspond to the relevant build step.
      Array / List of Nested Choice of Objects
    • $class: 'HealthAnalyzerLrStep'
      • checkLrInstallation
        • Type: boolean
      • checkOsVersion
        • Type: boolean
      • checkFiles
          Nested Object
        • filesList
            Array / List of Nested Object
          • field
            • Type: String

step([$class: 'JobConfigRebrander']): Fix old Micro Focus Jenkins builds

    step([$class: 'MigrateAlmCredentialsBuilder']): Migrate ALM Credentials

      pcBuild: Execute 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
      • testId
        • 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: LRE Web UI > Testing > Select the relevant test > Test Details tab > Assigned Test Set drop down list > Edit the Test Set and look for the Test Instance 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

      collectPullRequestsToAlmOctane: ALM Octane pull-request collector

      This step is responsible for collecting pull requests from the SCM tool and injecting them to ALM Octane. See help information in ALM Octane Help Center.

      In addition, this step is used to define the scm repositories templates that are used by ALM Octane to link to your repository viewer. To configure templates in ALM Octane, access Settings > Spaces. Select a workspace and click DevOps > SCM Repositories. Follow the on-screen instructions.

      Every time pull requests are sent to ALM Octane the last update time is saved. The next time, only pull requests and commits that were updated after this time will be sent to ALM Octane.

      Supported version of ALM Octane: 15.0.49 and later.

      You can change the behaviour of this step by adding the following parameters to the job:
      • pullrequests_min_update_time: Use this parameter to override the last update time that is updated after each successful injection to ALM Octane.

      • pullrequests_max_pr_to_collect: Max number of pull requests to collect. Default is 100.

      • pullrequests_max_commits_to_collect: Max number of commits to collect for each pull request. Default is 100.



      Supported SCM Tools:
      SCM Tool Supported types of authentication How to create PAT (Personal access token)
      Bitbucket Server User/password and PAT Click on your profile icon -> Manage account -> Personal access tokens -> Create a token (Assign Read permissions for both Projects and Repositories)
      Github Cloud PAT only Click on your profile icon -> Settings -> Developer settings -> Personal access tokens -> Generate new token (Uncheck all scopes to grants read-only access)
      Github Server User/password and PAT

      Note : To create PAT credentials in Jenkins , use "Secret text" kind of credentials in "Add Credentials" dialog
      • configurationId
        • Type: String
      • workspaceId
        • Type: String
      • scmTool
        • Type: String
      • repositoryUrl
        • Type: String
      • credentialsId
        • Type: String
      • sourceBranchFilter
        • Type: String
      • targetBranchFilter
        • Type: String
      • useSSHFormat (optional)
        Select this if all other jobs that use this repository and are connected to ALM Octane pipelines use SSH format. It is important to be consistent with other jobs that use this repository.
        This will ensure that ALM Octane correctly identifies the SCM repository associated with commits, branches and pull requests.
        • Type: boolean

      runFromAlmBuilder: Execute Micro Focus functional tests from Micro Focus ALM

      • almServerName
        • Type: String
      • almCredentialsScope
        Select the scope of the credentials used for connecting to the specified ALM Server:
        • Job (local) credentials: This option requires to provide the credentials right here at job level.
        • System (global) credentials: This option allows the selection of UserName or ClientID from a dropdown list with global credentials.
        • Type: String
      • almUserName
        • Type: String
      • almPassword
        • Type: String
      • almDomain
        • Type: String
      • almProject
        • Type: String
      • almTestSets
        List of test sets to run. Each line contains a path to a test set or a test set folder.
        For example: Root\subFolder1\subFolder2\testSetToRun .
        In case you want to parameterize the tests please specify the parameters and their values like:
        Root\subFolder1\subFolder2\testSetToRun "Parameter1":"&ltstringvalue>",..., "ParameterN":&ltnumbervalue>
        • Type: String
      • almRunResultsMode
        • Type: String
      • almTimeout
        Number of seconds before timeout. If left empty timeout is unlimited.
        • Type: String
      • almRunMode
        Defines how the test set is executed:
        • Run locally: The test set is run on the machine that performs the build.
        • Run remotely: The test set is run on the host defined in the Testing Tool host field.
        • Run on planned host: The test set is run on the host defined in ALM.
        • Type: String
      • almRunHost
        If the Run mode field is set to Run remotely, use this field to specify the name of the host that runs the test set.
        • Type: String
      • almClientID
        • Type: String
      • almApiKey
        • Type: String
      • isSSOEnabled
        Obtain the Client ID and API key secret from your ALM site administrator.
        • Type: boolean
      • isFilterTestsEnabled (optional)
        • Type: boolean
      • filterTestsModel (optional)
          Nested Object
        • blockedCheckbox
          • Type: boolean
        • failedCheckbox
          • Type: boolean
        • notCompletedCheckbox
          • Type: boolean
        • noRunCheckbox
          • Type: boolean
        • passedCheckbox
          • Type: boolean
        • testName (optional)
          • Type: String
      • almServerSettingsModel (optional)
          Nested Object
        • almServerName
          • Type: String
        • almServerUrl
          • Type: String
        • almCredentials
            Array / List of Nested Object
          • almUsername
            • Type: String
          • almPassword
            • Type: String
        • almSSOCredentials
            Array / List of Nested Object
          • almClientID
            • Type: String
          • almApiKeySecret
            • Type: String

      runFromFSBuilder: Execute Micro Focus tests from file system

      • fsTests
        List of tests or folders that contain tests, to run. Each line should contain a single test, folder, or MTB file.
        In case you want to parameterize the tests please specify the parameters and their values like:
        &ltTestPath> "Parameter1":"&ltstringvalue>",..., "ParameterN":&ltnumbervalue>
        • Type: String
      • fileSystemTestSetModel
          Nested Object
        • fileSystemTestSet
          File system test set help.
            Array / List of Nested Object
          • tests
            List of tests or folders that contain tests, to run. Each line should contain a single test, folder, or MTB file.
            • Type: String
          • parallelRunnerEnvironments
              Array / List of Nested Object
            • environment
              Environment help string.
              • Type: String
            • environmentType
              • Type: String
      • summaryDataLogModel
          Nested Object
        • logVusersStates
          Display the number of virtual users in each state.
          • Type: boolean
        • logErrorCount
          Display the number of controller errors.
          • Type: boolean
        • logTransactionStatistics
          Display the number of passed transactions, failed transactions and hits per second.
          • Type: boolean
        • pollingInterval
          The rate at which the messages are displayed (in seconds). Default value is 10 seconds.
          • Type: String
      • scriptRTSSetModel
          Nested Object
        • scripts
            Array / List of Nested Object
          • scriptName
            The script name is found in Controller's Script Information dialog (Percentage Mode scenario) or Group Information dialog (Vuser Group Mode scenario).
            • Type: String
          • additionalAttributes
              Array / List of Nested Object
            • name
              • Type: String
            • value
              • Type: String
            • description
              • Type: String
      • isParallelRunnerEnabled (optional)
        Note: This mode is for UFT GUI test only.With it enabled, you can define multiple tests and the environments to run with.

        UFT will run on those environments in parallel(at most 4 environments simultaneously) for each test.

        Disabling this option will switch back to the normal view with the tests kept.
        • Type: boolean
      • uftSettingsModel (optional)
          Nested Object
        • selectedNode (optional)
          Please select the corresponding slave machine setup in the main job configuration.
          • Type: String
        • numberOfReruns (optional)
          Defines the maximum amount of test set reruns.
          • Type: String
        • cleanupTest (optional)
          Test executed before the re-run process of the failed tests.
          • Type: String
        • onCheckFailedTest (optional)
          • Type: String
        • fsTestType (optional)
          Select which test category will run again when build fails. The user can rerun the entire set of tests or only the failed tests from the suite. If just certain tests fail, then only the selected tests will rerun.
          • Type: String
        • rerunSettingsModels (optional)
            Array / List of Nested Object
          • test (optional)
            • Type: String
          • checked (optional)
            • Type: boolean
          • numberOfReruns (optional)
            • Type: int
          • cleanupTest (optional)
            • Type: String
      • analysisTemplate (optional)
        Apply a template for the build (path to a .tem file). Leave blank in order to use the default template.
        • Type: String
      • controllerPollingInterval (optional)
        Polling interval for checking the scenario status, in seconds. The default is 30 seconds.
        • Type: String
      • displayController (optional)
        Display the controller while the scenario is running.
        • Type: String
      • fsAutActions (optional)
        • Type: String
      • fsDeviceId (optional)
        • Type: String
      • fsDevicesMetrics (optional)
        • Type: String
      • fsExtraApps (optional)
        • Type: String
      • fsInstrumented (optional)
        • Type: String
      • fsJobId (optional)
        • Type: String
      • fsLaunchAppName (optional)
        • Type: String
      • fsManufacturerAndModel (optional)
        • Type: String
      • fsOs (optional)
        • Type: String
      • fsPassword (optional)
        The password for Mobile Center.
        • Type: String
      • fsReportPath (optional)
        The directory where the test results will be saved. If this is left empty the default directory will be used.
        • Type: String
      • fsTargetLab (optional)
        • Type: String
      • fsTimeout (optional)
        Timeout value in seconds. If left empty, there is no timeout.
        • Type: String
      • fsUftRunMode (optional)
        • Type: String
      • fsUserName (optional)
        The user name for Mobile Center.
        • Type: String
      • ignoreErrorStrings (optional)
        Ignore errors during the scenario run containing any of the strings listed below. For example: "Error: CPU usage for this load generator has exceeded 80%"
        • Type: String
      • mcServerName (optional)
        The Mobile Center host.
        • Type: String
      • mcTenantId (optional)
        • Type: String
      • perScenarioTimeOut (optional)
        The maximum time allotted for scenario execution, in minutes.
        • Type: String
      • proxySettings (optional)
          Nested Object
        • fsUseAuthentication
          • Type: boolean
        • fsProxyAddress
          • Type: String
        • fsProxyUserName
          • Type: String
        • fsProxyPassword
          • Type: class hudson.util.Secret
      • resultFileNames (optional)
        • Type: java.util.Map<java.lang.Long, java.lang.String>
      • useSSL (optional)
        • Type: boolean

      step([$class: 'RunLoadRunnerScript']): Run LoadRunner script

      • scriptsPath
        • Type: String

      publishMicroFocusTestResults: Publish Micro Focus tests result

      • archiveTestResultsMode
        To view the run results, do one of the following:
        1) In the left pane, click the Report and Summary link to display the report link and the link to the report folder. From this link, you can open the run results directly in your browser or open the artifacts
        2) From the Build Artifacts:
        • Open the run_results.html to view the run results.
        • Download the zipped report to your desired location and unzip it. In the Run Results Viewer, select the Results.xml file found inside the unzipped folder.
        Note that this option is valid only when using the “Execute test from file system” build step.
        • Type: String

      addALMOctaneSonarQubeListener: ALM Octane SonarQube listener

      See help information in ALM Octane Help Center
      • pushCoverage (optional)
        • Type: boolean
      • pushVulnerabilities (optional)
        • Type: boolean
      • skipWebhookCreation (optional)
        The integration with SonarQube works by using Sonar’s webhook mechanism, and contains several phases:
        1. The plugin automatically configures a webhook in Sonar before the job runs (this requires an access token with global 'Administer' permission).
        2. When the Sonar analysis is ready, the SonarQube server calls the configured webhook.
        3. Results are then submitted to ALM Octane for further analysis (this requires an access token with 'Read' permissions).
        If you cannot assign global 'Administer' permissions to the Sonar token (for the first phase), select "Skip webhook creation", and define a webhook manually in the Sonar server (either at the global level or project level) to the following URL: {jenkins_url}/webhooks/notify
        • Type: boolean
      • sonarServerUrl (optional)
        • Type: String
      • sonarToken (optional)
        • Type: String

      sseBuild: Execute Micro Focus tests using Micro Focus ALM Lab Management

      • almServerName
        • Type: String
      • almProject
        • Type: String
      • credentialsId
        • Type: String
      • clientType
        Client type is required for some ALM above 12.60 in authentication.
        • Type: String
      • almDomain
        • Type: String
      • runType
        • Type: String
      • almEntityId
        • Type: String
      • timeslotDuration
        • Type: String
      • cdaDetails (optional)
          Nested Object
        • deploymentAction
          • Type: String
        • deployedEnvironmentName
          • Type: String
        • deprovisioningAction
          • Type: String
      • description (optional)
        • Type: String
      • environmentConfigurationId (optional)
        To find the ID of your environment configuration, right-click the entity, copy the URL, and paste it to a text editor. Use the number associated with the EntityID at the end of the URL.
        • Type: String
      • postRunAction (optional)
        • Type: String

      step([$class: 'SvChangeModeBuilder']): SV: Change Mode of Virtual Service

      • serverName
        • Type: String
      • force
        If set, service will be modified regardless it is locked by another user.
        • Type: boolean
      • mode
        • Values: OFFLINE, SIMULATING, STAND_BY, LEARNING
      • dataModel
          Nested Object
        • selectionType
          • Values: BY_NAME, NONE, DEFAULT
        • dataModel
          • Type: String
      • performanceModel
          Nested Object
        • selectionType
          • Values: BY_NAME, NONE, OFFLINE, DEFAULT
        • performanceModel
          • Type: String
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String

      step([$class: 'SvDeployBuilder']): SV: Deploy Virtual Service

      • serverName
        • Type: String
      • force
        If set, service will be redeployed regardless it is locked by another user.
        • Type: boolean
      • service
        Name or ID of service to be deployed. All services from project are deployed if no service is specified.
        • Type: String
      • projectPath
        • Type: String
      • projectPassword
        • Type: String
      • firstAgentFallback
        Use first agent of the same type if no agent with id referenced from virtual service exists on target server.
        • Type: boolean

      step([$class: 'SvExportBuilder']): SV: Export Virtual Service

      • serverName
        • Type: String
      • force
        If set, service will be modified regardless it is locked by another user.
        • Type: boolean
      • targetDirectory
        Directory where exported services will be written.
        • Type: String
      • cleanTargetDirectory
        If checked, all direct subfolders of target directory containing a project file (*.vproj) will be deleted before export.
        • Type: boolean
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String
      • switchToStandByFirst
        Switch service to Stand-By mode to finish current learning before exporting learned data.
        • Type: boolean
      • archive
        If set, Export service(s) as project archive(s) (.vproja).
        • Type: boolean

      step([$class: 'SvUndeployBuilder']): SV: Undeploy Virtual Service

      • serverName
        • Type: String
      • continueIfNotDeployed
        Don't fail if any service marked to be undeployed is not deployed on server.
        • Type: boolean
      • force
        If set, service will be undeployed regardless it is locked by another user.
        • Type: boolean
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String

      uploadResultToALM: Upload test result to ALM

      • almServerName
        The name of the ALM Server.
        • Type: String
      • credentialsId
        • Type: String
      • almDomain
        The Domain of the project to be used.
        • Type: String
      • clientType
        Client type is required for some ALM above 12.60 in authentication.
        • Type: String
      • almProject
        The project to be used.
        • Type: String
      • testingFramework
        The testing framework that is used when generate the testing result file.
        • Type: String
      • testingTool
        The testing tool that is used when generate the testing result file.
        • Type: String
      • almTestFolder
        The path of the test folder that will contain the uploaded test. The path doesn't include the Root test folder (Subject).
        For example, sampletestfolder\subfolder means, the tests will be uploaded to test folder named 'subfolder', which is under the test folder named 'sampletestfolder',
        and 'sampletestfolder' is under the root test folder 'Subject'.
        • Type: String
      • almTestSetFolder
        The path of the testset folder that will contain the uploaded testset. The path doesn't include the Root testset folder.
        For example, sampletestsetfolder\subfolder means, the testsets will be uploaded to testset folder named 'subfolder', which is under the testset folder named 'sampletestsetfolder',
        and 'sampletestsetfolder' is under the root testset folder 'Root'.
        • Type: String
      • almTimeout
        Number of seconds before timeout. If left empty timeout is unlimited.
        • Type: String
      • testingResultFile
        The condition to find the testing result file, start from the root path of the job. For example, **/junitResult.xml to find testing result file for Junit Plugin, **/testng-results.xml to find testing result file for TestNG plugin.
        • Type: String
      • jenkinsServerUrl
        The HTTP URL of the Jenkins Server, form example, http://myjenkinsserver.test.com:8080 .
        • Type: String

      convertTestsToRun: ALM Octane testing framework converter

      This build step is intended to support execution of automated tests from Micro Focus ALM Octane.
      The builder searches for the "testsToRun" parameter which is sent from ALM Octane as part of the execution framework.
      Once it is found, its value is converted to the format of the selected testing framework, and injected to the "testsToRunConverted" environment parameter.
      Later, the new parameter can be used in the appropriate execution builder.
      • To use in parameter textboxes, use the following syntax: ${testsToRunConverted}

      • To use in the scripts, use the following syntax:
        • Linux shell: $testsToRunConverted
        • Windows batch command: %testsToRunConverted%
        • Pipeline script (workflow job): "${params.testsToRunConverted}"

        See examples in the tables below:
        Framework Linux shell
        Maven Surefire mvn clean -Dtest=$testsToRunConverted test
        Maven Failsafe mvn clean -Dit.test=$testsToRunConverted verify
        Gradle gradle test $testsToRunConverted
        Protractor protractor conf.js --grep="$testsToRunConverted"
        Cucumber-JVM over Maven/
        BDD Scenario
        mvn clean -Dcucumber.options="$testsToRunConverted" test
        JBehave over Maven mvn clean -Dfeatures="$testsToRunConverted" test

        Framework Windows batch command
        Maven Surefire mvn clean -Dtest=%testsToRunConverted% test
        Maven Failsafe mvn clean -Dit.test=%testsToRunConverted% verify
        Gradle gradle test %testsToRunConverted%
        Protractor protractor conf.js --grep="%testsToRunConverted%"
        Cucumber-JVM over Maven/
        BDD Scenario
        mvn clean -Dcucumber.options="%testsToRunConverted%" test
        JBehave over Maven mvn clean -Dfeatures="%testsToRunConverted%" test

        Framework Pipeline script
        Maven Surefire bat 'mvn clean -Dtest=${params.testsToRunConverted} test'
        Maven Failsafe bat 'mvn clean -Dit.test=${params.testsToRunConverted} verify'
        Gradle bat 'gradle test ${params.testsToRunConverted}'
        Protractor bat(/protractor conf.js --grep="${params.testsToRunConverted}"/)
        Cucumber-JVM over Maven/
        BDD Scenario
        bat(/mvn clean -Dcucumber.options="${params.testsToRunConverted}" test/)
        JBehave over Maven bat(/mvn clean -Dfeatures="${testsToRunConverted}" test/)


      Notes/Limitations :
      • UFT: In order to build a UFT MTBX file, this builder needs to know the test check-out directory. By default this is the job workspace directory. If tests are checked out in another directory, define in the job a String parameter "testsToRunCheckoutDirectory" with the correct directory.
      • JUnit/TestNG: Supported for JUnit 4.7+, Surefire Plugin 2.19+, Failsafe Plugin 2.12.1+.
      • Cucumber-JVM over Maven: If your project contains several run classes, specify a run class that will be used, otherwise all run classes will be executed by Cucumber. You can specify test runner by adding: '-Dtest=[runner class name]' to the Maven command
      • JBehave over Maven: read more about integration with JBehave here


      See more help information in ALM Octane Help Center
      • framework
        Select the testing framework whose format you want to convert to.
        • Type: String
      • format
        In the 'Custom conversion format' field, enter json that describes how to convert tests from raw format to the format of your testing framework. After conversion, the result is injected to the "testsToRunConverted" parameter.

        Note: Click "Validate" to check the correctness of the inserted configuration.

        The following are the components that you can use in the "Custom conversion format" :
        • testPattern - describes the pattern for converting single test. All parameters that needs to be replaced be real test data, should start with $, for example $package, $class, $testName, $externalRunId, $myCustomParam. All other characters in the pattern will appear in the final result as is.
        • testDelimiter - the delimiter used to separate different tests.
        • prefix - a prefix for the whole conversion result.
        • suffix - a suffix for the whole conversion result.
        • allowDuplication - indicate whether duplications are allowed in final result. Default is true.
        • testsToRunConvertedParameter - the parameter name that will contain the conversion result. Default value is "testsToRunConverted".
        • replacements - the array of replace methods.
        The minimal configuration is:

        {
            "testPattern": "$package.$class#$testName",
            "testDelimiter": ","
        }
            

        For example:

        The testsToRun parameter received 2 tests separated by a semicolon: v1:myPackage1|myClass1|myTest1;myPackage2|myClass2|myTest2
        The defined testPattern is: $package.$class#$testName
        The defined testDelimiter is: ,
        • $package variable will get a value of myPackage1 for the first test and myPackage2 for the second test.
        • $class variable will get a value of myClass1 for the first test and myClass2 for the second test.
        • $testName variable will get a value of myTest1 for the first test and myTest2 for the second test.

        The testsToRunConverted parameter will be equal: myPackage1.myClass1#myTest1,myPackage2.myClass2#myTest2

        Optional:
        There is a possibility to alter values received from ALM Octane, for example to set lowercase to the testName, replace spaces by '_', and so on.
        Here are examples of available replace methods. Each replace method contains "target" property that define what parts of the test pattern are affected by replace method, available values are $package,$class,$testName. Its possible to put several values separated by '|'. The replacements are executed in the order they appear in the 'Custom conversion format' json.
        "replacements": [
        {
            "type": "replaceRegex",
            "target": "$package|$class|$testName",
            "regex": "aaa",
            "replacement": "bbb",
            "description": "Replaces all the sequence of characters matching the regex with a replacement string."
        },{
            "type": "replaceRegexFirst",
            "target": "$package|$class|$testName",
            "regex": "aaa",
            "replacement": "bbb",
            "description": "Replaces the first substring that matches the given regex with the given replacement. For example, given regex '@(.*)@.*' , replacement '$1', and test name '@myTag@ my test name' - will replace test name by the content located between @, that is - 'myTag'."
        },{
            "type": "replaceString",
            "target": "$package|$class|$testName",
            "string": "xxx",
            "replacement": "yyy",
            "description": "Replaces all occurrences of ‘string’ with ‘replacement’."
        },{
            "type": "joinString",
            "target": "$package|$class|$testName",
            "prefix": "xxx",
            "suffix": "yyy",
            "description": "Add prefix and suffix to the test template."
        },{
            "type": "toLowerCase",
            "target": "$package|$class|$testName",
            "description": "Convert test template to lower case."
        },{
            "type": "toUpperCase",
            "target": "$package|$class|$testName",
            "description": "Convert test template to upper  case."
        },{
            "type": "notLatinAndDigitToOctal",
            "target": "$package|$class|$testName",
            "description": "Replaces all non-latin characters and digits ^[a-zA-Z0-9] to their ASCII octal value."
        }]
        
        • Type: String

      publishCodeCoverage: ALM Octane code coverage publisher

      See help information in ALM Octane Help Center
      • jacocoPathPattern
        • Type: String
      • lcovPathPattern
        • Type: String

      svChangeModeStep: SV: Change Mode of Virtual Service

      • serverName
        • Type: String
      • force
        • Type: boolean
      • mode
        • Values: OFFLINE, SIMULATING, STAND_BY, LEARNING
      • dataModel
          Nested Object
        • selectionType
          • Values: BY_NAME, NONE, DEFAULT
        • dataModel
          • Type: String
      • performanceModel
          Nested Object
        • selectionType
          • Values: BY_NAME, NONE, OFFLINE, DEFAULT
        • performanceModel
          • Type: String
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String

      svDeployStep: SV: Deploy Virtual Service

      • serverName
        • Type: String
      • force
        • Type: boolean
      • service
        • Type: String
      • projectPath
        • Type: String
      • projectPassword
        • Type: String
      • firstAgentFallback
        • Type: boolean

      svExportStep: SV: Export Virtual Service

      • serverName
        • Type: String
      • force
        • Type: boolean
      • targetDirectory
        • Type: String
      • cleanTargetDirectory
        • Type: boolean
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String
      • switchToStandByFirst
        • Type: boolean
      • archive
        • Type: boolean

      svUndeployStep: SV: Undeploy Virtual Service

      • serverName
        • Type: String
      • continueIfNotDeployed
        • Type: boolean
      • force
        • Type: boolean
      • serviceSelection
          Nested Object
        • selectionType
          • Values: SERVICE, PROJECT, ALL_DEPLOYED, DEPLOY
        • service
          • Type: String
        • projectPath
          • Type: String
        • projectPassword
          • Type: String

      uftScenarioLoad: Run UFT scenario

      • testPaths
        • Type: String
      • archiveTestResultsMode
        To view the run results, do one of the following:
        1) In the left pane, click the Report and Summary link to display the report link and the link to the report folder. From this link, you can open the run results directly in your browser or open the artifacts
        2) From the Build Artifacts:
        • Open the run_results.html to view the run results.
        • Download the zipped report to your desired location and unzip it. In the Run Results Viewer, select the Results.xml file found inside the unzipped folder.
        Note that this option is valid only when using the “Execute test from file system” build step.
        • Type: String
      • fsReportPath (optional)
        • Type: String
      • fsTimeout (optional)
        • Type: String
      • fsUftRunMode (optional)
        • Type: String
      • runFromFileBuilder (optional)
          Nested Object
        • fsTests
          List of tests or folders that contain tests, to run. Each line should contain a single test, folder, or MTB file.
          In case you want to parameterize the tests please specify the parameters and their values like:
          &ltTestPath> "Parameter1":"&ltstringvalue>",..., "ParameterN":&ltnumbervalue>
          • Type: String
        • fileSystemTestSetModel
            Nested Object
          • fileSystemTestSet
            File system test set help.
              Array / List of Nested Object
            • tests
              List of tests or folders that contain tests, to run. Each line should contain a single test, folder, or MTB file.
              • Type: String
            • parallelRunnerEnvironments
                Array / List of Nested Object
              • environment
                Environment help string.
                • Type: String
              • environmentType
                • Type: String
        • summaryDataLogModel
            Nested Object
          • logVusersStates
            Display the number of virtual users in each state.
            • Type: boolean
          • logErrorCount
            Display the number of controller errors.
            • Type: boolean
          • logTransactionStatistics
            Display the number of passed transactions, failed transactions and hits per second.
            • Type: boolean
          • pollingInterval
            The rate at which the messages are displayed (in seconds). Default value is 10 seconds.
            • Type: String
        • scriptRTSSetModel
            Nested Object
          • scripts
              Array / List of Nested Object
            • scriptName
              The script name is found in Controller's Script Information dialog (Percentage Mode scenario) or Group Information dialog (Vuser Group Mode scenario).
              • Type: String
            • additionalAttributes
                Array / List of Nested Object
              • name
                • Type: String
              • value
                • Type: String
              • description
                • Type: String
        • isParallelRunnerEnabled (optional)
          Note: This mode is for UFT GUI test only.With it enabled, you can define multiple tests and the environments to run with.

          UFT will run on those environments in parallel(at most 4 environments simultaneously) for each test.

          Disabling this option will switch back to the normal view with the tests kept.
          • Type: boolean
        • uftSettingsModel (optional)
            Nested Object
          • selectedNode (optional)
            Please select the corresponding slave machine setup in the main job configuration.
            • Type: String
          • numberOfReruns (optional)
            Defines the maximum amount of test set reruns.
            • Type: String
          • cleanupTest (optional)
            Test executed before the re-run process of the failed tests.
            • Type: String
          • onCheckFailedTest (optional)
            • Type: String
          • fsTestType (optional)
            Select which test category will run again when build fails. The user can rerun the entire set of tests or only the failed tests from the suite. If just certain tests fail, then only the selected tests will rerun.
            • Type: String
          • rerunSettingsModels (optional)
              Array / List of Nested Object
            • test (optional)
              • Type: String
            • checked (optional)
              • Type: boolean
            • numberOfReruns (optional)
              • Type: int
            • cleanupTest (optional)
              • Type: String
        • analysisTemplate (optional)
          Apply a template for the build (path to a .tem file). Leave blank in order to use the default template.
          • Type: String
        • controllerPollingInterval (optional)
          Polling interval for checking the scenario status, in seconds. The default is 30 seconds.
          • Type: String
        • displayController (optional)
          Display the controller while the scenario is running.
          • Type: String
        • fsAutActions (optional)
          • Type: String
        • fsDeviceId (optional)
          • Type: String
        • fsDevicesMetrics (optional)
          • Type: String
        • fsExtraApps (optional)
          • Type: String
        • fsInstrumented (optional)
          • Type: String
        • fsJobId (optional)
          • Type: String
        • fsLaunchAppName (optional)
          • Type: String
        • fsManufacturerAndModel (optional)
          • Type: String
        • fsOs (optional)
          • Type: String
        • fsPassword (optional)
          The password for Mobile Center.
          • Type: String
        • fsReportPath (optional)
          The directory where the test results will be saved. If this is left empty the default directory will be used.
          • Type: String
        • fsTargetLab (optional)
          • Type: String
        • fsTimeout (optional)
          Timeout value in seconds. If left empty, there is no timeout.
          • Type: String
        • fsUftRunMode (optional)
          • Type: String
        • fsUserName (optional)
          The user name for Mobile Center.
          • Type: String
        • ignoreErrorStrings (optional)
          Ignore errors during the scenario run containing any of the strings listed below. For example: "Error: CPU usage for this load generator has exceeded 80%"
          • Type: String
        • mcServerName (optional)
          The Mobile Center host.
          • Type: String
        • mcTenantId (optional)
          • Type: String
        • perScenarioTimeOut (optional)
          The maximum time allotted for scenario execution, in minutes.
          • Type: String
        • proxySettings (optional)
            Nested Object
          • fsUseAuthentication
            • Type: boolean
          • fsProxyAddress
            • Type: String
          • fsProxyUserName
            • Type: String
          • fsProxyPassword
            • Type: class hudson.util.Secret
        • resultFileNames (optional)
          • Type: java.util.Map<java.lang.Long, java.lang.String>
        • useSSL (optional)
          • Type: boolean
      • runResultRecorder (optional)
          Nested Object
        • archiveTestResultsMode
          To view the run results, do one of the following:
          1) In the left pane, click the Report and Summary link to display the report link and the link to the report folder. From this link, you can open the run results directly in your browser or open the artifacts
          2) From the Build Artifacts:
          • Open the run_results.html to view the run results.
          • Download the zipped report to your desired location and unzip it. In the Run Results Viewer, select the Results.xml file found inside the unzipped folder.
          Note that this option is valid only when using the “Execute test from file system” build step.
          • Type: String

      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.