Octopus.Script exported 2022-02-14 by harbertc belongs to ‘Testery’ category.
Run tests in the Testery platform. For more information, visit https://testery.io/.
Parameters
When steps based on the template are included in a project’s deployment process, the parameters below can be set.
Testery Token
TesteryToken =
Your Testery API token (found in Testery -> Settings -> Integrations -> Show API Token)
Testery Project Name
TesteryProjectName =
The project name for this build.
Testery Environment
TesteryEnvironment = #{Octopus.Deployment.Tenant.Name}
The environment (defined in Testery) where the tests should be run. It can be convenient to have these line up with tenant names.
Testery Include Tags
TesteryIncludeTags =
Comma separated list of tags for tests that should be included in the test run.
Build ID
TesteryBuildId =
The build id of the project being tested, typically coming from your CI/CD. If uploading test artifacts to Testery, this build id must match.
Git Refererence
TesteryGitReference =
This is the git reference to the tests you want to run. This value can be extracted from the packages when build info is reported to Octopus.
Latest Deploy
TesteryLatestDeploy = False
When set, Testery will run the latest version of the tests that has been deployed using the Create Deploy command. Optionally use this instead of Git Ref.
Fail on Failure
TesteryFailOnFailure = True
When set, this step will fail if there are any failing tests.
Wait for Results
TesteryWaitForResults = True
When set, this step will wait for the test run to be complete before continuing.
Testery API URL
TesteryApiUrl = https://api.testery.io/api
Override the default API URL for development and testing purposes. Most users of this step template will not need to modify this parameter.
Script body
Steps based on this template will execute the following PowerShell script.
try {$pipCmd = get-command pip} catch {}
if (!($pipCmd)) {
Fail-Step "This step template requires Python 3.6 or greater and pip to be installed. Python is available at https://www.python.org/downloads/"
}
pip install testery --upgrade --disable-pip-version-check --no-warn-script-location -qqq
$TesteryCommand = "testery create-test-run --token `"${TesteryToken}`" --project `"${TesteryProjectName}`" --environment `"${TesteryEnvironment}`""
if ("${TesteryIncludeTags}" -eq "") {
$TesteryCommand = $TesteryCommand + " --include-all-tags"
} else {
$TesteryCommand = $TesteryCommand + " --include-tags `"${TesteryIncludeTags}`""
}
if ("${TesteryLatestDeploy}" -eq "True") {
$TesteryCommand = $TesteryCommand + " --latest-deploy"
}
if ("${TesteryGitReference}" -ne "") {
$TesteryCommand = $TesteryCommand + " --git-ref `"${TesteryGitReference}`""
}
if ("${TesteryBuildId}" -ne "") {
$TesteryCommand = $TesteryCommand + " --build-id `"${TesteryBuildId}`""
}
if ("${TesteryWaitForResults}" -eq "True") {
$TesteryCommand = $TesteryCommand + " --wait-for-results"
}
if ("${TesteryFailOnFailure}" -eq "True") {
$TesteryCommand = $TesteryCommand + " --fail-on-failure"
}
echo $TesteryCommand
Invoke-Expression $TesteryCommand
Provided under the Apache License version 2.0.
To use this template in Octopus Deploy, copy the JSON below and paste it into the Library → Step templates → Import dialog.
{
"Id": "9aa25d78-a90a-425e-a25d-b1e9f1bf08be",
"Name": "Testery - Create Test Run",
"Description": "Run tests in the Testery platform. For more information, visit https://testery.io/.",
"Version": 25,
"ExportedAt": "2022-02-14T18:39:12.429Z",
"ActionType": "Octopus.Script",
"Author": "harbertc",
"Packages": [],
"Parameters": [
{
"Id": "db36b837-9fe6-480f-b4f1-05cfc68bd08b",
"Name": "TesteryToken",
"Label": "Testery Token",
"HelpText": "Your Testery API token (found in Testery -> Settings -> Integrations -> Show API Token)",
"DefaultValue": "",
"DisplaySettings": {
"Octopus.ControlType": "Sensitive"
}
},
{
"Id": "54de434f-0fa8-4351-b59c-a790845a0f14",
"Name": "TesteryProjectName",
"Label": "Testery Project Name",
"HelpText": "The project name for this build.",
"DefaultValue": "",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Id": "352f0cf8-da46-4651-b7d0-3c5413d7f3e0",
"Name": "TesteryEnvironment",
"Label": "Testery Environment",
"HelpText": "The environment (defined in Testery) where the tests should be run. It can be convenient to have these line up with tenant names.",
"DefaultValue": "#{Octopus.Deployment.Tenant.Name}",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Id": "9a9d2a9f-cd24-40a2-96b7-c6f42e489e7e",
"Name": "TesteryIncludeTags",
"Label": "Testery Include Tags",
"HelpText": "Comma separated list of tags for tests that should be included in the test run.",
"DefaultValue": "",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Id": "b9d78e94-20fb-4fa5-9a9a-34cf173c8911",
"Name": "TesteryBuildId",
"Label": "Build ID",
"HelpText": "The build id of the project being tested, typically coming from your CI/CD. If uploading test artifacts to Testery, this build id must match.",
"DefaultValue": "",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Id": "96cec59e-cf55-4867-87ec-bb4af80a86e3",
"Name": "TesteryGitReference",
"Label": "Git Refererence",
"HelpText": "This is the git reference to the tests you want to run. This value can be extracted from the packages when build info is reported to Octopus.",
"DefaultValue": "",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Id": "c8af7536-23d8-44c1-82e0-13325d9b3d06",
"Name": "TesteryLatestDeploy",
"Label": "Latest Deploy",
"HelpText": "When set, Testery will run the latest version of the tests that has been deployed using the Create Deploy command. Optionally use this instead of Git Ref.",
"DefaultValue": "False",
"DisplaySettings": {
"Octopus.ControlType": "Checkbox"
}
},
{
"Id": "7ad3f9db-398a-470e-861a-1c93e4f4ea46",
"Name": "TesteryFailOnFailure",
"Label": "Fail on Failure",
"HelpText": "When set, this step will fail if there are any failing tests.",
"DefaultValue": "True",
"DisplaySettings": {
"Octopus.ControlType": "Checkbox"
}
},
{
"Id": "59391562-5601-4c8b-a117-1fc29d71d91d",
"Name": "TesteryWaitForResults",
"Label": "Wait for Results",
"HelpText": "When set, this step will wait for the test run to be complete before continuing.",
"DefaultValue": "True",
"DisplaySettings": {
"Octopus.ControlType": "Checkbox"
}
},
{
"Id": "ae843e0f-a189-411e-94e8-cc8d92c7373a",
"Name": "TesteryApiUrl",
"Label": "Testery API URL",
"HelpText": "Override the default API URL for development and testing purposes. Most users of this step template will not need to modify this parameter.",
"DefaultValue": "https://api.testery.io/api",
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
}
],
"Properties": {
"Octopus.Action.Script.ScriptSource": "Inline",
"Octopus.Action.Script.Syntax": "PowerShell",
"Octopus.Action.Script.ScriptBody": "try {$pipCmd = get-command pip} catch {}\nif (!($pipCmd)) {\n\tFail-Step \"This step template requires Python 3.6 or greater and pip to be installed. Python is available at https://www.python.org/downloads/\"\n}\n\npip install testery --upgrade --disable-pip-version-check --no-warn-script-location -qqq\n\n$TesteryCommand = \"testery create-test-run --token `\"${TesteryToken}`\" --project `\"${TesteryProjectName}`\" --environment `\"${TesteryEnvironment}`\"\"\n\nif (\"${TesteryIncludeTags}\" -eq \"\") {\n\t$TesteryCommand = $TesteryCommand + \" --include-all-tags\"\n} else {\n\t$TesteryCommand = $TesteryCommand + \" --include-tags `\"${TesteryIncludeTags}`\"\"\n}\n\nif (\"${TesteryLatestDeploy}\" -eq \"True\") {\n\t$TesteryCommand = $TesteryCommand + \" --latest-deploy\"\n}\n\nif (\"${TesteryGitReference}\" -ne \"\") {\n\t$TesteryCommand = $TesteryCommand + \" --git-ref `\"${TesteryGitReference}`\"\"\n}\n\nif (\"${TesteryBuildId}\" -ne \"\") {\n\t$TesteryCommand = $TesteryCommand + \" --build-id `\"${TesteryBuildId}`\"\"\n}\n\nif (\"${TesteryWaitForResults}\" -eq \"True\") {\n\t$TesteryCommand = $TesteryCommand + \" --wait-for-results\"\n}\n\nif (\"${TesteryFailOnFailure}\" -eq \"True\") {\n\t$TesteryCommand = $TesteryCommand + \" --fail-on-failure\"\n}\n\n\necho $TesteryCommand\nInvoke-Expression $TesteryCommand"
},
"Category": "Testery",
"HistoryUrl": "https://github.com/OctopusDeploy/Library/commits/master/step-templates//opt/buildagent/work/75443764cd38076d/step-templates/testery-create-test-run.json",
"Website": "/step-templates/9aa25d78-a90a-425e-a25d-b1e9f1bf08be",
"Logo": "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",
"$Meta": {
"Type": "ActionTemplate"
}
}
Page updated on Monday, February 14, 2022