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.
loadRunnerTest
: Run LoadRunner performance scenario testsrunLoadRunnerScript
: Run LoadRunner scriptsseBuildAndPublish
: Execute tests using ALM Lab Management and Publish tests resultcollectBranchesToAlmOctane
: ALM Octane branch collectorcommonResultUploadBuilder
: Upload test result to ALM using field mappingpublishGherkinResults
: ALM Octane Cucumber test reporterexecuteTestsFromAlmOctane
: Execute tests from ALM Octane (Tech Preview)healthAnalyzer
: OpenText Health Analyzerstep([$class: 'JobConfigRebrander'])
: Fix old OpenText Jenkins buildsstep([$class: 'MigrateAlmCredentialsBuilder'])
: Migrate ALM CredentialspcBuild
: Execute OpenText Enterprise Performance Engineering testcollectPullRequestsToAlmOctane
: ALM Octane pull-request collectorrunFromAlmBuilder
: Execute OpenText functional tests from OpenText ALMrunFromCodelessBuilder
: Execute OpenText codeless testsrunFromFSBuilder
: Execute OpenText tests from file systemstep([$class: 'RunLoadRunnerScript'])
: Run LoadRunner scriptpublishMicroFocusTestResults
: Publish OpenText tests resultaddALMOctaneSonarQubeListener
: ALM Octane SonarQube listenersseBuild
: Execute OpenText tests using OpenText ALM Lab Managementstep([$class: 'SvChangeModeBuilder'])
: SV: Change Mode of Virtual Servicestep([$class: 'SvDeployBuilder'])
: SV: Deploy Virtual Servicestep([$class: 'SvExportBuilder'])
: SV: Export Virtual Servicestep([$class: 'SvUndeployBuilder'])
: SV: Undeploy Virtual ServiceuploadResultToALM
: Upload test result to ALMconvertTestsToRun
: ALM Octane testing framework converterpublishCodeCoverage
: ALM Octane code coverage publishersvChangeModeStep
: SV: Change Mode of Virtual ServicesvDeployStep
: SV: Deploy Virtual ServicesvExportStep
: SV: Export Virtual ServicesvUndeployStep
: SV: Undeploy Virtual ServiceuftScenarioLoad
: Run UFT scenarioloadRunnerTest
: Run LoadRunner performance scenario teststestPaths : String
archiveTestResultsMode : String
analysisTemplate : String
(optional)
controllerPollingInterval : String
(optional)
displayController : String
(optional)
fsTimeout : String
(optional)
ignoreErrorStrings : String
(optional)
perScenarioTimeOut : String
(optional)
scriptRTSSetModel
(optional)
scripts
scriptName : String
additionalAttributes
name : String
value : String
description : String
summaryDataLogModel
(optional)
logVusersStates : boolean
logErrorCount : boolean
logTransactionStatistics : boolean
pollingInterval : String
sseBuildAndPublish
: Execute tests using ALM Lab Management and Publish tests resultalmServerName : String
almProject : String
credentialsId : String
clientType : String
almDomain : String
runType : String
almEntityId : String
timeslotDuration : String
archiveTestResultsMode : String
cdaDetails
(optional)
deploymentAction : String
deployedEnvironmentName : String
deprovisioningAction : String
description : String
(optional)
environmentConfigurationId : String
(optional)
postRunAction : String
(optional)
collectBranchesToAlmOctane
: ALM Octane branch collectorSCM 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 | |
GitLab | PAT only | Click on your profile icon -> Edit Profile -> Access tokens -> Add new token (Assign the read_api and the read_repository permissions) |
configurationId : String
workspaceId : String
scmTool : String
repositoryUrl : String
credentialsId : String
filter : String
useSSHFormat : boolean
(optional)
commonResultUploadBuilder
: Upload test result to ALM using field mappingalmServerName : String
credentialsId : String
almDomain : String
clientType : String
almProject : String
almTestFolder : String
almTestSetFolder : String
testingResultFile : String
runStatusMapping : String
Run status mapping field is for mapping the test result's status values to ALM run status value. Yaml key represents the ALM run status values. Only one of the following status can be set here:
Passed
Failed
Yaml value represents the condition that sustains the status. Ten kinds of conditions can be set here:
==StringValue
!=StringValue
==0 (Or any numeric value)
!=0 (Or any numeric value)
>>0 (Or any numeric value)
<<0 (Or any numeric value)
<=0 (Or any numeric value)
>=0 (Or any numeric value)
==NULL
!=NULL
You should first set the status field in field mapping.
fieldMapping : String
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"createNewTest : boolean
publishGherkinResults
: ALM Octane Cucumber test reporterTo 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 : String
executeTestsFromAlmOctane
: Execute tests from ALM Octane (Tech Preview)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:
|
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 : String
workspaceId : String
executionMode : String
ids : String
healthAnalyzer
: OpenText Health Analyzerproducts
$class: 'HealthAnalyzerLrStep'
checkLrInstallation : boolean
checkOsVersion : boolean
checkFiles
filesList
field : String
pcBuild
: Execute OpenText Enterprise Performance Engineering testserverAndPort : String
pcServerName : String
credentialsId : String
almDomain : String
almProject : String
testId : String
testInstanceId : String
autoTestInstanceID : String
timeslotDurationHours : String
timeslotDurationMinutes : String
postRunAction
COLLATE
, COLLATE_AND_ANALYZE
, DO_NOTHING
vudsMode : boolean
statusBySLA : boolean
description : String
addRunToTrendReport : String
trendReportId : String
HTTPSProtocol : boolean
proxyOutURL : String
credentialsProxyId : String
retry : String
retryDelay : String
retryOccurrences : String
authenticateWithToken : boolean
collectPullRequestsToAlmOctane
: ALM Octane pull-request collectorSCM 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 | |
GitLab | PAT only | Click on your profile icon -> Edit Profile -> Access tokens -> Add new token (Assign the read_api and the read_repository permissions) |
configurationId : String
workspaceId : String
scmTool : String
repositoryUrl : String
credentialsId : String
sourceBranchFilter : String
targetBranchFilter : String
useSSHFormat : boolean
(optional)
runFromAlmBuilder
: Execute OpenText functional tests from OpenText ALMalmServerName : String
almCredentialsScope : String
almUserName : String
almPassword : String
almDomain : String
almProject : String
almTestSets : String
almRunResultsMode : String
almTimeout : String
almRunMode : String
almRunHost : String
almClientID : String
almApiKey : String
isSSOEnabled : boolean
areParametersEnabled : boolean
specifyParametersModel
parameterJson : String
isFilterTestsEnabled : boolean
(optional)
filterTestsModel
(optional)
blockedCheckbox : boolean
failedCheckbox : boolean
notCompletedCheckbox : boolean
noRunCheckbox : boolean
passedCheckbox : boolean
testName : String
(optional)
almServerSettingsModel
(optional)
almServerName : String
almServerUrl : String
almCredentials
almUsername : String
almPassword : String
almSSOCredentials
almClientID : String
almApiKeySecret : String
runFromFSBuilder
: Execute OpenText tests from file systemfsTests : String
areParametersEnabled : boolean
specifyParametersModel
parameterJson : String
fileSystemTestSetModel
fileSystemTestSet
tests : String
parallelRunnerEnvironments
environment : String
environmentType : String
summaryDataLogModel
logVusersStates : boolean
logErrorCount : boolean
logTransactionStatistics : boolean
pollingInterval : String
scriptRTSSetModel
scripts
scriptName : String
additionalAttributes
name : String
value : String
description : String
isParallelRunnerEnabled : boolean
(optional)
uftSettingsModel
(optional)
selectedNode : String
(optional)
numberOfReruns : String
(optional)
cleanupTest : String
(optional)
onCheckFailedTest : String
(optional)
fsTestType : String
(optional)
rerunSettingsModels
(optional)
test : String
(optional)
checked : boolean
(optional)
numberOfReruns : int
(optional)
cleanupTest : String
(optional)
analysisTemplate : String
(optional)
authModel
(optional)
mcUserName : String
mcPassword : String
mcTenantId : String
mcExecToken : String
value : String
cloudBrowserModel
(optional)
cloudBrowserUrl : String
cloudBrowserType : String
cloudBrowserVersion : String
cloudBrowserRegion : String
cloudBrowserOs : String
controllerPollingInterval : String
(optional)
displayController : String
(optional)
fsAutActions : String
(optional)
fsDeviceId : String
(optional)
fsDevicesMetrics : String
(optional)
fsExtraApps : String
(optional)
fsInstrumented : String
(optional)
fsJobId : String
(optional)
fsLaunchAppName : String
(optional)
fsManufacturerAndModel : String
(optional)
fsOs : String
(optional)
fsReportPath : String
(optional)
fsTargetLab : String
(optional)
fsTimeout : String
(optional)
fsUftRunMode : String
(optional)
ignoreErrorStrings : String
(optional)
mcServerName : String
(optional)
outEncoding : String
(optional)
perScenarioTimeOut : String
(optional)
proxySettings
(optional)
fsUseAuthentication : boolean
fsProxyAddress : String
fsProxyUserName : String
fsProxyPassword : String
resultFileNames
(optional)
java.util.Map<java.lang.Long, java.lang.String>
useSSL : boolean
(optional)
publishMicroFocusTestResults
: Publish OpenText tests resultarchiveTestResultsMode : String
addALMOctaneSonarQubeListener
: ALM Octane SonarQube listenerpushCoverage : boolean
(optional)
pushVulnerabilities : boolean
(optional)
skipWebhookCreation : boolean
(optional)
sonarServerUrl : String
(optional)
sonarToken : String
(optional)
sseBuild
: Execute OpenText tests using OpenText ALM Lab ManagementalmServerName : String
almProject : String
credentialsId : String
clientType : String
almDomain : String
runType : String
almEntityId : String
timeslotDuration : String
cdaDetails
(optional)
deploymentAction : String
deployedEnvironmentName : String
deprovisioningAction : String
description : String
(optional)
environmentConfigurationId : String
(optional)
postRunAction : String
(optional)
step([$class: 'SvChangeModeBuilder'])
: SV: Change Mode of Virtual ServiceserverName : String
force : boolean
mode
OFFLINE
, SIMULATING
, STAND_BY
, LEARNING
dataModel
selectionType
BY_NAME
, NONE
, DEFAULT
dataModel : String
performanceModel
selectionType
BY_NAME
, NONE
, OFFLINE
, DEFAULT
performanceModel : String
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
step([$class: 'SvDeployBuilder'])
: SV: Deploy Virtual ServiceserverName : String
force : boolean
service : String
projectPath : String
projectPassword : String
firstAgentFallback : boolean
step([$class: 'SvExportBuilder'])
: SV: Export Virtual ServiceserverName : String
force : boolean
targetDirectory : String
cleanTargetDirectory : boolean
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
switchToStandByFirst : boolean
archive : boolean
step([$class: 'SvUndeployBuilder'])
: SV: Undeploy Virtual ServiceserverName : String
continueIfNotDeployed : boolean
force : boolean
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
uploadResultToALM
: Upload test result to ALMalmServerName : String
credentialsId : String
almDomain : String
clientType : String
almProject : String
testingFramework : String
testingTool : String
almTestFolder : String
almTestSetFolder : String
almTimeout : String
testingResultFile : String
testingAttachments : String
jenkinsServerUrl : String
convertTestsToRun
: ALM Octane testing framework converterFramework | 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/) |
framework : String
format : String
{ "testPattern": "$package.$class#$testName", "testDelimiter": "," }
"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." }]
publishCodeCoverage
: ALM Octane code coverage publisherjacocoPathPattern : String
lcovPathPattern : String
svChangeModeStep
: SV: Change Mode of Virtual ServiceserverName : String
force : boolean
mode
OFFLINE
, SIMULATING
, STAND_BY
, LEARNING
dataModel
selectionType
BY_NAME
, NONE
, DEFAULT
dataModel : String
performanceModel
selectionType
BY_NAME
, NONE
, OFFLINE
, DEFAULT
performanceModel : String
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
svDeployStep
: SV: Deploy Virtual ServiceserverName : String
force : boolean
service : String
projectPath : String
projectPassword : String
firstAgentFallback : boolean
svExportStep
: SV: Export Virtual ServiceserverName : String
force : boolean
targetDirectory : String
cleanTargetDirectory : boolean
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
switchToStandByFirst : boolean
archive : boolean
svUndeployStep
: SV: Undeploy Virtual ServiceserverName : String
continueIfNotDeployed : boolean
force : boolean
serviceSelection
selectionType
SERVICE
, PROJECT
, ALL_DEPLOYED
, DEPLOY
service : String
projectPath : String
projectPassword : String
uftScenarioLoad
: Run UFT scenariotestPaths : String
archiveTestResultsMode : String
fsReportPath : String
(optional)
fsTimeout : String
(optional)
fsUftRunMode : String
(optional)
runFromFileBuilder
(optional)
fsTests : String
areParametersEnabled : boolean
specifyParametersModel
parameterJson : String
fileSystemTestSetModel
fileSystemTestSet
tests : String
parallelRunnerEnvironments
environment : String
environmentType : String
summaryDataLogModel
logVusersStates : boolean
logErrorCount : boolean
logTransactionStatistics : boolean
pollingInterval : String
scriptRTSSetModel
scripts
scriptName : String
additionalAttributes
name : String
value : String
description : String
isParallelRunnerEnabled : boolean
(optional)
uftSettingsModel
(optional)
selectedNode : String
(optional)
numberOfReruns : String
(optional)
cleanupTest : String
(optional)
onCheckFailedTest : String
(optional)
fsTestType : String
(optional)
rerunSettingsModels
(optional)
test : String
(optional)
checked : boolean
(optional)
numberOfReruns : int
(optional)
cleanupTest : String
(optional)
analysisTemplate : String
(optional)
authModel
(optional)
mcUserName : String
mcPassword : String
mcTenantId : String
mcExecToken : String
value : String
cloudBrowserModel
(optional)
cloudBrowserUrl : String
cloudBrowserType : String
cloudBrowserVersion : String
cloudBrowserRegion : String
cloudBrowserOs : String
controllerPollingInterval : String
(optional)
displayController : String
(optional)
fsAutActions : String
(optional)
fsDeviceId : String
(optional)
fsDevicesMetrics : String
(optional)
fsExtraApps : String
(optional)
fsInstrumented : String
(optional)
fsJobId : String
(optional)
fsLaunchAppName : String
(optional)
fsManufacturerAndModel : String
(optional)
fsOs : String
(optional)
fsReportPath : String
(optional)
fsTargetLab : String
(optional)
fsTimeout : String
(optional)
fsUftRunMode : String
(optional)
ignoreErrorStrings : String
(optional)
mcServerName : String
(optional)
outEncoding : String
(optional)
perScenarioTimeOut : String
(optional)
proxySettings
(optional)
fsUseAuthentication : boolean
fsProxyAddress : String
fsProxyUserName : String
fsProxyPassword : String
resultFileNames
(optional)
java.util.Map<java.lang.Long, java.lang.String>
useSSL : boolean
(optional)
runResultRecorder
(optional)
archiveTestResultsMode : String
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.